D3DPRESENTFLAG

Konstanten, die von D3DPRESENT _ PARAMETERSverwendet werden.

#Definieren 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 Flag fest, wenn das Gerät oder die Swapkette erstellt wird, um das Verwerfen von Z-Puffern zu ermöglichen. Wenn dieses Flag festgelegt ist, ist der Inhalt des Tiefenschablonenpuffers ungültig, nachdem entweder Presentoder SetDepthStencilSurface mit einer anderen Tiefenoberfläche aufgerufen wurde. Das Verwerfen von Z-Pufferdaten kann die Leistung erhöhen und ist treiberabhängig. Die Debuglaufzeit erzwingt das Verwerfen, indem der Z-Puffer auf einen konstanten Wert gelöscht wird, nachdem entweder Presentoder SetDepthStencilSurface mit einer anderen Tiefenoberfläche aufgerufen wurde.
Das Verwerfen von Z-Pufferdaten ist für alle sperrbaren Formate, D3DFMT_D16_LOCKABLE und D3DFMT_D32F_LOCKABLE unzulässig. Jede Verwendung von CreateDevice, die ein sperrbares Format angibt, und das Verwerfen von Z-Puffern schlägt fehl. Weitere Informationen zu Formaten finden Sie unter D3DFORMAT.
D3DPRESENTFLAG_LOCKABLE_BACKBUFFER 0x00000001 Legen Sie dieses Flag fest, wenn die Anwendung die Möglichkeit benötigt, den Backpuffer direkt zu sperren. Beachten Sie, dass Hintergrundpuffer nicht gesperrt werden können, es sei denn, die Anwendung gibt D3DPRESENTFLAG_LOCKABLE_BACKBUFFER beim Aufrufen von CreateDevice oder Resetan. Sperrbare Hintergrundpuffer verursachen bei einigen Grafikhardwarekonfigurationen Leistungskosten. Das Ausführen eines Sperrvorgangs (oder Verwenden 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 D3DSWAPEFFECT D3DSWAPEFFECT_FLIPEX ist, da das Flip-Modell dem Desktopfenster-Manager den Zugriff auf den Backpuffer einer Anwendung ermöglicht. Eine prozessübergreifende freigegebene Oberfläche sollte nicht gesperrt werden.

D3DPRESENTFLAG_NOAUTOROTATE 0x00000020 Gedrehte Monitore werden automatisch mit einer rotierenden Kopie während der Präsentation verarbeitet, was nicht sehr effizient ist. Dieses Flag bedeutet, dass die Anwendung ihre eigene Anzeigerotation ausführt.
Unterschiede zwischen Direct3D 9 und Direct3D 9Ex:
Dieses Flag ist nur in Direct3D 9Ex verfügbar.

Anwendungen können ihre eigene Drehung erreichen, möglicherweise mithilfe einer gedrehten Ansichtsmatrix. Die Methoden GetDisplayModeEx und GetAdapterDisplayModeEx sollten verwendet werden, um die aktuelle Rotationseinstellung zu finden. Die Backbufferparameter Width und Height in CreateDeviceEx und ResetEx müssen querformatiert sein, während die Struktur des Vollbildanzeigemodus mit der von EnumAdapterModesEx zurückgegebenen Struktur identisch sein sollte (d. h. Breite und Höhe werden ausgetauscht, wenn sie um 90 und 270 Grad gedreht werden).

Bei Verwendung von Lock on rotated render targets (Sperren für gedrehte Renderziele) gelten annahmen in der linken oberen Ecke nicht mehr als true, das Renderziel SURFACE_DESC bleibt (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 einen beliebigen RAW-Anzeigemodus anzugeben, der vom Anzeigeadapter aufzählt, obwohl Direct3D möglicherweise angegeben hat, dass der Modus ungültig ist. Die Anwendung sollte dies auf stabile Weise implementieren, falls der gewünschte Modus tatsächlich 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 für den Treiber, dass die Hintergrundpuffer Videodaten enthalten.
D3DPRESENTFLAG_OVERLAY_LIMITEDRGB 0x00000080 Gibt an, ob es sich bei der Überlagerung um ein RGB-Element mit vollständigem Oder begrenztem RGB-Bereich handelt. Durch Festlegen dieses Flags wird der eingeschränkte RGB-Bereich angegeben. In einem eingeschränkten RGB-Bereich ist der RGB-Bereich so komprimiert, dass 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. Wenn Sie dieses Flag festlegen, wird BT.709 für High-Definition TV (CSV) 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 es sich bei der Überlagerung um ein herkömmliches YCbCr- oder ein erweitertes YCbCr-Element (xvYCC) handelt. 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 Das Festlegen dieses Flags gibt an, dass die Swapkette geschützte Inhalte enthält und die Laufzeit automatisch dazu veranlasst, den Zugriff auf die Swapkette einzuschränken, 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 Das Festlegen dieses Flags gibt an, dass der Treiber den Zugriff auf alle freigegebenen Ressourcen einschränken soll, die für die DWM-Interaktion erstellt werden. Der Aufrufer 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
Header d3d9types.h
Mindestbetriebssystem Windows 98

Direct3D-Konstanten