DDSCAPS-Struktur (ddraw.h)
Die DDSCAPS-Struktur definiert die Funktionen eines Microsoft DirectDraw-Oberflächenobjekts.
Syntax
typedef struct _DDSCAPS {
DWORD dwCaps;
} DDSCAPS;
Member
dwCaps
Gibt eine Reihe von Flags an, die die Funktionen der Oberfläche angeben. Dieses Element ist ein bitweiser OR mit einem der folgenden Flags:
Flag | Bedeutung |
---|---|
DDSCAPS_3DDEVICE |
Diese Oberfläche kann für das 3D-Rendering verwendet werden. Anwendungen können dieses Flag verwenden, um sicherzustellen, dass ein Gerät, das nur auf einen bestimmten Heap gerendert werden kann, Offscreen-Oberflächen vom richtigen Heap zugewiesen hat. Wenn dieses Flag für einen Heap festgelegt ist, wird die Oberfläche nicht von diesem Heap zugeordnet. |
DDSCAPS_ALLOCONLOAD |
Arbeitsspeicher für die Oberfläche wird erst zugewiesen, wenn die Oberfläche von der Anwendung mit der IDirect3DTexture::Load-Methode geladen wird. |
DDSCAPS_ALPHA |
Diese Oberfläche enthält nur Alphainformationen. |
DDSCAPS_BACKBUFFER |
Diese Oberfläche ist der Rückpuffer einer Oberflächen-Flipping-Struktur. In der Regel wird diese Funktion durch die CreateSurface-Methode der Anwendung festgelegt, wenn das flag DDSCAPS_FLIP verwendet wird. Nur für die Oberfläche, die unmittelbar vor der DDSCAPS_FRONTBUFFER-Oberfläche liegt, ist diese Funktion festgelegt. Die anderen Oberflächen werden durch das Vorhandensein des DDSCAPS_FLIP-Flags, ihre Anlagereihenfolge und das Fehlen der DDSCAPS_FRONTBUFFER- und DDSCAPS_BACKBUFFER-Funktionen als Rückpuffer identifiziert. Wenn diese Funktion an die CreateSurface-Methode der Anwendung gesendet wird, wird ein eigenständiger Backpuffer erstellt. Nachdem diese Methode aufgerufen wurde, kann diese Oberfläche an einen Frontpuffer, einen anderen Rückpuffer oder beides angefügt werden, um eine Flipping-Oberflächenstruktur zu bilden. Weitere Informationen finden Sie in der AddAttachedSurface-Methode im DirectX SDK. DirectDraw unterstützt eine beliebige Anzahl von Oberflächen in einer Flipping-Struktur. |
DDSCAPS_COMPLEX |
Eine komplexe Oberfläche wird beschrieben. Eine komplexe Oberfläche führt zur Erstellung von mehr als einer Oberfläche. Die zusätzlichen Oberflächen werden an der Stammoberfläche angebracht. Die komplexe Struktur kann nur durch Zerstörung der Wurzel zerstört werden. |
DDSCAPS_EXECUTEBUFFER |
Die Oberfläche ist ein Ausführungspuffer, bei dem es sich um einen linearen Teil des System- oder Videospeichers handelt, der eine Microsoft Direct3D-Anzeigeliste enthält. Ein Treiber meldet dieses Funktionsbit, um anzugeben, dass er Ausführungspuffer im Videospeicher erstellen kann. Wenn die Direct3D-Runtime dieses Bit erkennt, kann sie Vom Treiber Ausführungspuffer anfordern. Anwendungen können dieses Funktionsbit nicht erkennen. |
DDSCAPS_FLIP |
Diese Oberfläche ist Teil einer Oberflächen-Flipping-Struktur. Wenn diese Funktion an die CreateSurface-Methode der Anwendung übergeben wird, werden ein Frontpuffer und mindestens ein Backpuffer erstellt. DirectDraw legt das DDSCAPS_FRONTBUFFER Bit auf der Frontpufferoberfläche und das DDSCAPS_BACKBUFFER Bit auf der Oberfläche neben der Frontpufferoberfläche fest. Das dwBackBufferCount-Element der DDSURFACEDESC-Struktur muss auf mindestens 1 festgelegt werden, damit der Methodenaufruf erfolgreich ist. Die DDSCAPS_COMPLEX-Funktion muss immer festgelegt werden, wenn mehrere Oberflächen mithilfe der CreateSurface-Methode erstellt werden. |
DDSCAPS_FRONTBUFFER |
Diese Oberfläche ist der vordere Puffer einer Oberflächen-Flipping-Struktur. Dieses Flag wird in der Regel von der CreateSurface-Methode der Anwendung festgelegt, wenn die DDSCAPS_FLIP-Funktion festgelegt wird. Wenn diese Funktion an die CreateSurface-Methode gesendet wird, wird ein eigenständiger Frontpuffer erstellt. Diese Oberfläche verfügt nicht über die DDSCAPS_FLIP-Funktion. Es kann mit der AddAttachedSurface-Methode der Anwendung an andere Rückpuffer angefügt werden, um eine Flipping-Struktur zu bilden. |
DDSCAPS_HWCODEC |
Diese Oberfläche sollte in der Lage sein, einen Stream von der Hardware zu dekomprimieren. |
DDSCAPS_LIVEVIDEO |
Diese Oberfläche sollte in der Lage sein, Livevideos zu empfangen. |
DDSCAPS_LOCALVIDMEM |
Diese Oberfläche ist im lokalen Anzeigespeicher true und nicht im nicht lokalen Anzeigespeicher vorhanden. Wenn dieses Flag angegeben ist, muss auch DDSCAPS_VIDEOMEMORY angegeben werden. Dieses Flag kann nicht mit dem DDSCAPS_NONLOCALVIDMEM-Flag verwendet werden. |
DDSCAPS_MIPMAP |
Diese Oberfläche ist eine Ebene einer mipmap. Diese Oberfläche wird an andere DDSCAPS_MIPMAP Oberflächen angefügt, um die mipmap zu bilden. Dies kann explizit erfolgen, indem eine Reihe von Oberflächen erstellt und mit der AddAttachedSurface-Methode der Anwendung oder implizit durch die CreateSurface-Methode der Anwendung angefügt wird. Wenn diese Funktion festgelegt ist, muss auch DDSCAPS_TEXTURE festgelegt werden. |
DDSCAPS_MODEX |
Diese Oberfläche ist eine 320x200- oder 320x240-Modus-X-Oberfläche. Wenn dieses Funktionsbit vom Microsoft Windows 2000- oder höher-Treiber festgelegt wird, ist DirectDraw deaktiviert. |
DDSCAPS_NONLOCALVIDMEM |
Diese Oberfläche befindet sich im nicht lokalen Anzeigespeicher und nicht im lokalen Anzeigespeicher. Wenn dieses Flag angegeben wird, muss auch DDSCAPS_VIDEOMEMORY Flag angegeben werden. Dies kann nicht mit dem DDSCAPS_LOCALVIDMEM-Flag verwendet werden. |
DDSCAPS_OFFSCREENPLAIN |
Diese Oberfläche ist jede Offscreen-Oberfläche, die keine Overlay-, Textur-, Z-Puffer-, Front-Puffer-, Back-Buffer- oder Alpha-Oberfläche ist. Es wird verwendet, um einfache Oberflächen zu identifizieren. |
DDSCAPS_OVERLAY |
Diese Oberfläche ist eine Überlagerung. Die Sichtbarkeit dieser Überlagerung hängt davon ab, ob sie derzeit auf der primären Oberfläche überlagert wird. DDSCAPS_VISIBLE kann verwendet werden, um zu bestimmen, ob es gerade überlagert wird. |
DDSCAPS_OPTIMIZED |
Dieses Flag ist derzeit nicht implementiert. |
DDSCAPS_OWNDC |
Diese Oberfläche verfügt über eine Gerätekontextzuordnung (DC) für einen langen Zeitraum. Wenn dieses Funktionsbit vom Windows 2000- oder höher-Treiber festgelegt wird, wird DirectDraw deaktiviert. |
DDSCAPS_PALETTE |
Mit diesem Gerätetreiber können eindeutige DirectDrawPalette-Objekte erstellt und an diese Oberfläche angefügt werden. |
DDSCAPS_PRIMARYSURFACE |
Diese Oberfläche ist die primäre Oberfläche. Sie stellt dar, was für den Benutzer derzeit sichtbar ist. |
DDSCAPS_PRIMARYSURFACELEFT |
Diese Oberfläche ist die primäre Oberfläche für das linke Auge. Es stellt dar, was für das linke Auge des Benutzers im Moment sichtbar ist. Wenn diese Oberfläche erstellt wird, stellt die Oberfläche mit der DDSCAPS_PRIMARYSURFACE-Funktion das dar, was das rechte Auge des Benutzers sieht. |
DDSCAPS_STANDARDVGAMODE |
Diese Oberfläche ist eine Standardoberfläche im VGA-Modus und keine ModeX-Oberfläche. Dieses Flag kann nicht in Kombination mit dem DDSCAPS_MODEX-Flag verwendet werden. |
DDSCAPS_SYSTEMMEMORY |
Dieser Oberflächenspeicher wurde aus dem Systemspeicher zugeordnet. Wenn dieses Funktionsbit vom Windows 2000- oder höher-Treiber festgelegt wird, ist DirectDraw deaktiviert. |
DDSCAPS_TEXTURE |
Diese Oberfläche kann als 3D-Textur verwendet werden. Sie gibt nicht an, ob die Oberfläche für diesen Zweck verwendet wird. |
DDSCAPS_VIDEOMEMORY |
Diese Oberfläche ist im Anzeigespeicher vorhanden. |
DDSCAPS_VIDEOPORT |
Diese Oberfläche kann Daten von einem VPE-Objekt (Videoporterweiterungen) empfangen. |
DDSCAPS_VISIBLE |
Änderungen an dieser Oberfläche sind sofort sichtbar. Es wird immer für die primäre Oberfläche sowie für Überlagerungen festgelegt, während sie überlagert werden, und Texturzuordnungen, während sie texturiert werden. |
DDSCAPS_WRITEONLY |
Nur Schreibzugriff auf die Oberfläche ist zulässig. Der Lesezugriff von der Oberfläche kann einen allgemeinen Schutzfehler (General Protection Fault, GPF) generieren, aber die Leseergebnisse von dieser Oberfläche sind nicht aussagekräftig. Wenn dieses Funktionsbit vom Windows 2000- oder höher-Treiber festgelegt wird, ist DirectDraw deaktiviert. |
DDSCAPS_ZBUFFER |
Diese Oberfläche ist der Z-Puffer. Es enthält Bittiefeninformationen, die verwendet werden, um zu bestimmen, welche Pixel sichtbar sind und welche verdeckt sind. Der z-Puffer enthält Informationen, die nicht angezeigt werden können. |
Hinweise
Diese Struktur wird vom Treiber verwendet, um die Vom Treiber unterstützten Oberflächentypen zu melden. Sie wird auch von einer Anwendung ausgefüllt, um den Typ der zu erstellenden Oberfläche anzugeben.
Anforderungen
Anforderung | Wert |
---|---|
Header | ddraw.h |