Struttura DDSCAPS (ddraw.h)

La struttura DDSCAPS definisce le funzionalità di un oggetto surface Microsoft DirectDraw.

Sintassi

typedef struct _DDSCAPS {
  DWORD dwCaps;
} DDSCAPS;

Members

dwCaps

Indica un set di flag che specificano le funzionalità della superficie. Questo membro è un OR bit per bit di uno dei flag seguenti:

Contrassegno Significato

DDSCAPS_3DDEVICE

Questa superficie può essere usata per il rendering 3D. Le applicazioni possono usare questo flag per garantire che un dispositivo che possa essere eseguito solo il rendering in un determinato heap ha superfici offscreen allocate dall'heap corretto. Se questo flag è impostato per un heap, la superficie non viene allocata da tale heap.

DDSCAPS_ALLOCONLOAD

La memoria per la superficie non viene allocata finché la superficie non viene caricata dall'applicazione usando il metodo IDirect3DTexture::Load .

DDSCAPS_ALPHA

Questa superficie contiene solo informazioni alfa.

DDSCAPS_BACKBUFFER

Questa superficie è il buffer posteriore di una struttura di scorrimento della superficie. In genere, questa funzionalità viene impostata dal metodo CreateSurface dell'applicazione quando viene usato il flag di DDSCAPS_FLIP. Solo la superficie che precede immediatamente la superficie DDSCAPS_FRONTBUFFER ha questa funzionalità impostata. Le altre superfici vengono identificate come buffer indietro in base alla presenza del flag di DDSCAPS_FLIP, all'ordine di allegato e all'assenza delle funzionalità di DDSCAPS_FRONTBUFFER e DDSCAPS_BACKBUFFER. Se questa funzionalità viene inviata al metodo CreateSurface dell'applicazione, viene creato un buffer back autonomo. Dopo aver chiamato questo metodo, questa superficie potrebbe essere associata a un buffer anteriore, un altro buffer indietro o entrambi per formare una struttura di superficie di scorrimento. Per altre informazioni, vedere il metodo AddAttachedSurface in DirectX SDK. DirectDraw supporta un numero arbitrario di superfici in una struttura di scorrimento.

DDSCAPS_COMPLEX

Viene descritta una superficie complessa. Una superficie complessa comporta la creazione di più di una superficie. Le superfici aggiuntive sono associate alla superficie radice. La struttura complessa può essere distrutta solo distruggendo la radice.

DDSCAPS_EXECUTEBUFFER

La superficie è un buffer di esecuzione, ovvero un blocco lineare di memoria video o di sistema che contiene un elenco di visualizzazione di Microsoft Direct3D. Un driver segnala questo bit di funzionalità per indicare che può creare buffer di esecuzione in memoria video. Se il runtime Direct3D rileva questo bit, può richiedere buffer eseguiti dal driver. Le applicazioni non possono rilevare questo bit di funzionalità.

DDSCAPS_FLIP

Questa superficie fa parte di una struttura di scorrimento della superficie. Quando questa funzionalità viene passata al metodo CreateSurface dell'applicazione, viene creato un buffer anteriore e uno o più buffer back. DirectDraw imposta il bit di DDSCAPS_FRONTBUFFER sulla superficie del buffer anteriore e il bit di DDSCAPS_BACKBUFFER sulla superficie adiacente alla superficie del buffer anteriore. Il membro dwBackBufferCount della struttura DDSURFACEDESC deve essere impostato su almeno 1 affinché la chiamata al metodo abbia esito positivo. La funzionalità DDSCAPS_COMPLEX deve essere sempre impostata quando si creano più superfici usando il metodo CreateSurface .

DDSCAPS_FRONTBUFFER

Questa superficie è il buffer anteriore di una struttura di scorrimento della superficie. Questo flag viene in genere impostato dal metodo CreateSurface dell'applicazione quando viene impostata la funzionalità DDSCAPS_FLIP. Se questa funzionalità viene inviata al metodo CreateSurface , viene creato un buffer front autonomo. Questa superficie non ha la funzionalità di DDSCAPS_FLIP. Può essere collegato ad altri buffer indietro per formare una struttura di scorrimento usando il metodo AddAttachedSurface dell'applicazione.

DDSCAPS_HWCODEC

Questa superficie deve essere in grado di avere un flusso decompresso dall'hardware.

DDSCAPS_LIVEVIDEO

Questa superficie deve essere in grado di ricevere video live.

DDSCAPS_LOCALVIDMEM

Questa superficie esiste in true, la memoria di visualizzazione locale anziché la memoria di visualizzazione non locale. Se questo flag è specificato, è necessario specificare anche DDSCAPS_VIDEOMEMORY. Questo flag non può essere usato con il flag DDSCAPS_NONLOCALVIDMEM.

DDSCAPS_MIPMAP

Questa superficie è un livello di mipmap. Questa superficie è collegata ad altre superfici DDSCAPS_MIPMAP per formare la mipmap. Questa operazione può essere eseguita in modo esplicito creando un numero di superfici e associandole usando il metodo AddAttachedSurface dell'applicazione o implicitamente dal metodo CreateSurface dell'applicazione. Se questa funzionalità è impostata, è necessario impostare anche DDSCAPS_TEXTURE.

DDSCAPS_MODEX

Questa superficie è una superficie x 320x200 o 320x240 modalità X. Se questo bit di funzionalità è impostato dal driver Microsoft Windows 2000 o versione successiva, DirectDraw è disabilitato.

DDSCAPS_NONLOCALVIDMEM

Questa superficie esiste nella memoria di visualizzazione non locale anziché in true, la memoria di visualizzazione locale. Se questo flag è specificato, è necessario specificare anche DDSCAPS_VIDEOMEMORY flag. Impossibile usare questo oggetto con il flag di DDSCAPS_LOCALVIDMEM.

DDSCAPS_OFFSCREENPLAIN

Questa superficie è qualsiasi superficie offscreen che non è una superficie sovrapposta, trama, z-buffer, buffer front-buffer, back-buffer o superficie alfa. Viene usato per identificare le superfici semplici.

DDSCAPS_OVERLAY

Questa superficie è una sovrapposizione. La visibilità di questa sovrapposizione dipende dal fatto che sia attualmente sovralicciato sulla superficie primaria. DDSCAPS_VISIBLE può essere usato per determinare se è in corso l'overlaid al momento.

DDSCAPS_OPTIMIZED

Questo flag non è attualmente implementato.

DDSCAPS_OWNDC

Questa superficie avrà un'associazione del contesto del dispositivo (DC) per un periodo lungo. Se questa funzionalità è impostata dal driver Windows 2000 o versione successiva, DirectDraw verrà disabilitata.

DDSCAPS_PALETTE

Questo driver di dispositivo consente di creare oggetti DirectDrawPalette univoci e collegati a questa superficie.

DDSCAPS_PRIMARYSURFACE

Questa superficie è la superficie primaria. Rappresenta ciò che è visibile all'utente al momento.

DDSCAPS_PRIMARYSURFACELEFT

Questa superficie è la superficie primaria per l'occhio sinistro. Rappresenta ciò che è visibile all'occhio sinistro dell'utente al momento. Quando questa superficie viene creata, la superficie con la funzionalità di DDSCAPS_PRIMARYSURFACE rappresenta ciò che viene visualizzato dall'occhio destro dell'utente.

DDSCAPS_STANDARDVGAMODE

Questa superficie è una superficie di modalità VGA standard e non una superficie ModeX. Questo flag non può essere usato in combinazione con il flag DDSCAPS_MODEX.

DDSCAPS_SYSTEMMEMORY

Questa memoria di superficie è stata allocata dalla memoria di sistema. Se questo bit di funzionalità è impostato dal driver Windows 2000 o versione successiva, DirectDraw è disabilitato.

DDSCAPS_TEXTURE

Questa superficie può essere usata come trama 3D. Non indica se la superficie viene usata per tale scopo.

DDSCAPS_VIDEOMEMORY

Questa superficie esiste nella memoria visualizzata.

DDSCAPS_VIDEOPORT

Questa superficie può ricevere dati da un oggetto VPE (Video Port Extensions).

DDSCAPS_VISIBLE

Le modifiche apportate a questa superficie sono immediatamente visibili. È sempre impostato per la superficie primaria, nonché per le sovrimpressione mentre sono sovrapponibili e mappe di trama mentre sono a trama.

DDSCAPS_WRITEONLY

Solo l'accesso in scrittura è consentito all'area. L'accesso in lettura dalla superficie può generare un errore di protezione generale (GPF), ma i risultati di lettura da questa superficie non sono significativi. Se questo bit di funzionalità è impostato dal driver Windows 2000 o versione successiva, DirectDraw è disabilitato.

DDSCAPS_ZBUFFER

Questa superficie è il buffer z. Contiene informazioni dettagliate bit usate per determinare quali pixel sono visibili e quali sono oscurati. Il buffer z contiene informazioni che non possono essere visualizzate.

Commenti

Questa struttura viene usata dal driver per segnalare i tipi di superfici supportate dal driver. Viene inoltre compilato da un'applicazione per specificare il tipo di superficie da creare.

Requisiti

Requisito Valore
Intestazione ddraw.h