Freigeben über


D3DPRESENTFLAG

Konstanten, die von D3DPRESENT_PARAMETERSverwendet werden.

#define Wert Beschreibung
D3DPRESENTFLAG_DEVICECLIP 0x00000004 Clip a windowed Present blit into the window client area, within the monitor screen area of the video adapter that created the Direct3D device. D3DPRESENTFLAG_DEVICECLIP ist mit D3DSWAPEFFECT_FLIPEX ungültig.
D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL 0x00000002 Legen Sie dieses Kennzeichen fest, wenn das Gerät oder die Swapchain erstellt wird, um das Verwerfen des Z-Puffers zu aktivieren. Wenn dieses Flag festgelegt ist, ist der Inhalt des Tiefenschablonenpuffers ungültig, nachdem sie entweder Presentoder SetDepthStencilSurface mit einer anderen Tiefenoberfläche aufgerufen haben. Das Verwerfen von Z-Pufferdaten kann die Leistung erhöhen und ist treiberabhängig. Die Debuglaufzeit erzwingt das Verwerfen, indem der Z-Puffer nach dem Aufruf von Presentoder SetDepthStencilSurface- mit einer anderen Tiefenoberfläche gelöscht wird.
Das Verwerfen von Z-Pufferdaten ist für alle sperrbaren Formate, D3DFMT_D16_LOCKABLE und D3DFMT_D32F_LOCKABLE unzulässig. Jede Verwendung von CreateDevice angeben, dass ein sperrbares Format angegeben wird und das Verwerfen des Z-Puffers fehlschlägt. Weitere Informationen zu Formaten finden Sie unter D3DFORMAT.
D3DPRESENTFLAG_LOCKABLE_BACKBUFFER 0x00000001 Legen Sie dieses Kennzeichen fest, wenn die Anwendung die Möglichkeit benötigt, den Hintergrundpuffer direkt zu sperren. Beachten Sie, dass Hintergrundpuffer nicht gesperrt werden können, es sei denn, die Anwendung gibt D3DPRESENTFLAG_LOCKABLE_BACKBUFFER beim Aufrufen CreateDevice oder Zurücksetzenan. Sperrbare Hintergrundpuffer verursachen leistungseinbußen bei einigen Grafikhardwarekonfigurationen. Das Ausführen eines Sperrvorgangs (oder die Verwendung von UpdateSurface- zum Schreiben) für den sperrbaren Hintergrundpuffer verringert die Leistung auf vielen Karten. Ziehen Sie in diesem Fall die Verwendung von strukturierten Dreiecken in Betracht, um Daten in den Hintergrundpuffer zu verschieben.
Unterschiede zwischen Direct3D 9 und Direct3D 9Ex:
In Direct3D9Ex kann dieses Flag nicht festgelegt werden, wenn die D3DSWAPEFFECT D3DSWAPEFFECT_FLIPEX ist, da das Flip-Modell dem Desktopfenster-Manager den Zugriff auf den Hintergrundpuffer einer Anwendung ermöglicht. Eine prozessübergreifende gemeinsam genutzte Oberfläche sollte nicht gesperrt werden.

 

D3DPRESENTFLAG_NOAUTOROTATE 0x00000020 Gedrehte Monitore werden automatisch mit einer gedrehten Kopie während der Präsentation behandelt, was nicht sehr effizient ist. Dieses Kennzeichen bedeutet, dass die Anwendung eine eigene Anzeigedrehung durchführt.
Unterschiede zwischen Direct3D 9 und Direct3D 9Ex:
Dieses Flag ist nur in Direct3D 9Ex verfügbar.

 

Anwendungen können ihre eigene Drehung erreichen, indem sie eine gedrehte Ansichtsmatrix verwenden. Die Methoden GetDisplayModeEx und GetAdapterDisplayModeEx- sollten verwendet werden, um die aktuelle Drehungseinstellung zu finden. Die Parameter "Backbuffer Width" und "Height" in CreateDeviceEx und ResetEx- müssen querformatiert sein, während die Struktur des Vollbildmodus mit dem identisch sein sollte, was von EnumAdapterModesEx zurückgegeben wird (d. h. Breite und Höhe werden beim Drehen von 90 und 270 Grad getauscht).

Wenn Sie "Sperren" für gedrehte Renderziele verwenden, halten die Annahmen in der oberen linken Ecke nicht mehr wahr, das Renderziel SURFACE_DESC bleibt querformatiert (wie durch die Erstellungsparameter impliziert), und GDI-Fenster, Mauskoordinaten und solche müssen ordnungsgemäß übersetzt werden, wenn sie mit dem Direct3D-Renderziel und der Szene verwendet werden.

D3DPRESENTFLAG_UNPRUNEDMODE 0x00000040 Verwenden Sie dieses Flag, um alle vom Displayadapter aufgezählten RAW-Anzeigemodus anzugeben, obwohl Direct3D möglicherweise den Modus ungültig hat. Die Anwendung sollte dies robust implementieren, falls der gewünschte Modus wirklich ungültig ist.
Unterschiede zwischen Direct3D 9 und Direct3D 9Ex:
Dieses Flag ist nur in Direct3D 9Ex verfügbar.

 

D3DPRESENTFLAG_VIDEO 0x00000010 Dies ist ein Hinweis auf den Treiber, dass die Hintergrundpuffer Videodaten enthalten.
D3DPRESENTFLAG_OVERLAY_LIMITEDRGB 0x00000080 Gibt an, ob es sich bei der Überlagerung um einen vollständigen RGB- oder begrenzten Bereich handelt. Wenn Sie dieses Kennzeichen festlegen, wird der begrenzte Bereich RGB angegeben. Im begrenzten Bereich RGB wird der RGB-Bereich komprimiert, sodass 16:16:16 schwarz und 235:235:235 weiß ist.
Unterschiede zwischen Direct3D 9 und Direct3D 9Ex:
Dieses Flag ist nur in Direct3D 9Ex verfügbar.

 

D3DPRESENTFLAG_OVERLAY_YCbCr_BT709 0x00000100 Gibt an, ob die Überlagerung BT.601 oder BT.709 ist. Durch Festlegen dieses Kennzeichens wird BT.709 für HDTV (High-Definition TV) angegeben.
Unterschiede zwischen Direct3D 9 und Direct3D 9Ex:
Dieses Flag ist nur in Direct3D 9Ex verfügbar.

 

D3DPRESENTFLAG_OVERLAY_YCbCr_xvYCC 0x00000200 Gibt an, ob die Überlagerung konventioneller YCbCr oder erweiterter YCbCr (xvYCC) ist. Durch Festlegen dieses Flags wird der erweiterte YCbCr (xvYCC) angegeben.
Unterschiede zwischen Direct3D 9 und Direct3D 9Ex:
Dieses Flag ist nur in Direct3D 9Ex verfügbar.

 

D3DPRESENTFLAG_RESTRICTED_CONTENT 0x00000400 Durch Festlegen dieses Flags wird angegeben, dass die Swapchain geschützte Inhalte enthält und die Laufzeit automatisch den Zugriff auf die Swapchain einschränkt, sodass nur der Desktop-Windows-Manager (DWM) die Swapchain verwenden kann.
Unterschiede zwischen Direct3D 9 und Direct3D 9Ex:
Dieses Flag ist nur in Direct3D 9Ex verfügbar.

 

D3DPRESENTFLAG_RESTRICT_SHARED_RESOURCE_DRIVER 0x00000800 Durch Festlegen dieses Flags wird angegeben, dass der Treiber den Zugriff auf alle freigegebenen Ressourcen einschränken soll, die für DWM-Interaktionen erstellt werden. Der Anrufer muss einen authentifizierten Kanal mit dem Treiber erstellen. Der Treiber sollte dann den Zugriff auf Prozesse zulassen, die versuchen, diese freigegebenen Ressourcen zu öffnen.
Unterschiede zwischen Direct3D 9 und Direct3D 9Ex:
Dieses Flag ist nur in Direct3D 9Ex verfügbar.

 

 

Diese Konstanten werden von D3DPRESENT_PARAMETERSverwendet.

Konstanteninformationen

Anforderung Wert
Kopfball d3d9types.h
Mindestbetriebssystem Windows 98

 

Direct3D-Konstanten