DD_CANCREATESURFACEDATA-Struktur (ddrawint.h)
Die DD_CANCREATESURFACEDATA-Struktur enthält Informationen, die erforderlich sind, um anzugeben, ob eine Oberfläche ( im Fall von CanCreateD3DBuffer) ein Puffer erstellt werden kann.
Syntax
typedef struct _DD_CANCREATESURFACEDATA {
PDD_DIRECTDRAW_GLOBAL lpDD;
PDD_SURFACEDESC lpDDSurfaceDesc;
DWORD bIsDifferentPixelFormat;
HRESULT ddRVal;
VOID *CanCreateSurface;
} *PDD_CANCREATESURFACEDATA, DD_CANCREATESURFACEDATA;
Member
lpDD
Zeigt auf die DD_DIRECTDRAW_GLOBAL-Struktur , die das Gerät des Treibers beschreibt.
lpDDSurfaceDesc
Zeigt auf eine DDSURFACEDESC-Struktur , die eine Beschreibung der zu erstellenden Oberfläche oder des Puffers enthält. Weitere Informationen zu diesem Member finden Sie im Abschnitt Hinweise.
bIsDifferentPixelFormat
Gibt an, ob sich das Pixelformat der zu erstellenden Oberfläche von dem der primären Oberfläche unterscheidet. Für den Rückruf CanCreateD3DBuffer D3DBuffer ist dieses Element immer auf FALSE festgelegt, da der Treiber versucht, einen Puffer zu erstellen, der Vertexdaten oder -befehle anstelle von Pixeldaten enthält.
ddRVal
Gibt den Speicherort an, an dem der Treiber den Rückgabewert des Rückrufs DdCanCreateSurface oder CanCreateD3DBuffer schreibt. Ein Rückgabecode von DD_OK zeigt den Erfolg an. Weitere Informationen finden Sie unter Rückgabewerte für DirectDraw.
CanCreateSurface
Wird von der Microsoft DirectDraw-API verwendet und sollte nicht vom Treiber ausgefüllt werden.
Hinweise
Die Beschreibung der DirectDraw-Oberfläche, auf die das element lpDDSurfaceDesc verweist, ist tatsächlich eine DDSURFACEDESC2-Struktur (anstelle einer DDSURFACEDESC-Struktur) für DirectDraw 6.0 und höhere Runtimes. Wenn Sie daher informationen zur Oberflächenerstellungszeit von den Elementen benötigen, die sich in der DDSURFACEDESC2-Struktur, aber nicht in der DDSURFACEDESC-Struktur befinden, können Sie den Zeiger einfach auf eine DDSURFACEDESC-Struktur in einen Zeiger auf eine DDSURFACEDESC2 Struktur umwandeln, bevor sie verwendet wird. Das folgende Beispiel zeigt, wie der Wert von dwTextureStage (ein Element der DDSURFACEDESC2-Struktur, aber nicht auch der DDSURFACEDESC-Struktur) aus einem Zeiger auf eine DDSURFACEDESC-Struktur abgerufen werden kann.
DDSURFACEDESC2* pddsd = (DDSURFACEDESC2*)pccsd->lpDDSurfaceDesc;
DWORD dwStage = pddsd->dwTextureStage;
Anforderungen
Anforderung | Wert |
---|---|
Header | ddrawint.h (include Winddi.h) |