Freigeben über


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