D3DKMT_PRESENTFLAGS Struktur (d3dkmthk.h)
Die D3DKMT_PRESENTFLAGS-Struktur gibt an, wie ein vorhandener Vorgang ausgeführt wird.
Syntax
typedef struct _D3DKMT_PRESENTFLAGS {
union {
struct {
UINT Blt : 1;
UINT ColorFill : 1;
UINT Flip : 1;
UINT FlipDoNotFlip : 1;
UINT FlipDoNotWait : 1;
UINT FlipRestart : 1;
UINT DstRectValid : 1;
UINT SrcRectValid : 1;
UINT RestrictVidPnSource : 1;
UINT SrcColorKey : 1;
UINT DstColorKey : 1;
UINT LinearToSrgb : 1;
UINT PresentCountValid : 1;
UINT Rotate : 1;
UINT PresentToBitmap : 1;
UINT RedirectedFlip : 1;
UINT RedirectedBlt : 1;
UINT FlipStereo : 1;
UINT FlipStereoTemporaryMono : 1;
UINT FlipStereoPreferRight : 1;
UINT BltStereoUseRight : 1;
UINT PresentHistoryTokenOnly : 1;
UINT PresentRegionsValid : 1;
UINT PresentDDA : 1;
UINT ProtectedContentBlankedOut : 1;
UINT RemoteSession : 1;
UINT CrossAdapter : 1;
UINT DurationValid : 1;
UINT PresentIndirect : 1;
UINT PresentHMD : 1;
#if ...
UINT Reserved : 2;
#elif
UINT Reserved : 6;
#else
UINT Reserved : 15;
#endif
};
UINT Value;
};
} D3DKMT_PRESENTFLAGS;
Member
Blt
Ein UINT-Wert, der angibt, ob die Bitblt-Datenübertragung (Bitblt) an die primäre Oberfläche blockiert werden soll. Dieses Bitfeldflag kann mit den Bitfeldflags DstRectValid und SrcRectValid verwendet werden.
Das Festlegen dieses Elements entspricht dem Festlegen des ersten Bits des 32-Bit-Wertmembers (0x00000001).
ColorFill
Ein UINT-Wert, der angibt, ob mithilfe des Werts im Color-Member der D3DKMT_PRESENT-Struktur eine Farbfüllbitblisse für die primäre Oberfläche ausgeführt werden soll. Dieses Bitfeldflag kann mit dem Bitfeldflag DstRectValid verwendet werden.
Das Festlegen dieses Elements entspricht dem Festlegen des zweiten Bits des 32-Bit-Wertmembers (0x00000002).
Flip
Ein UINT-Wert, der angibt, ob auf eine neue Oberfläche gedreht werden soll.
Das Festlegen dieses Members entspricht dem Festlegen des dritten Bits des 32-Bit-Wertmembers (0x00000004).
FlipDoNotFlip
Ein UINT-Wert, der angibt, ob wartezeiten in die Warteschlange in den Renderingstream eingefügt werden soll. Wenn Sie dieses Element festlegen, wird auf dieselbe Oberfläche gedreht, die gerade gescannt wird.
Das Festlegen dieses Elements entspricht dem Festlegen des vierten Bits des 32-Bit-Wertmembers (0x00000008).
FlipDoNotWait
Ein UINT-Wert, der angibt, ob der installierbare OpenGL-Clienttreiber (ICD) erfordert, dass der vorliegende Vorgang wartet, bis die Anzahl der in der Warteschlange befindlichen Flip surfaces unter einen bestimmten Grenzwert fällt, bevor der Vorgang beginnt. Das Festlegen dieses Elements gibt an, dass für den ICD kein Warten erforderlich ist. Der Standardgrenzwert für die Anzahl der Flip-Oberflächen in der Warteschlange beträgt drei.
Das Festlegen dieses Members entspricht dem Festlegen des fünften Bits des 32-Bit-Wertmembers (0x00000010).
FlipRestart
Ein UINT-Wert, der angibt, ob ein Flip auf eine neue Oberfläche neu gestartet werden soll.
Das Festlegen dieses Elements entspricht dem Festlegen des sechsten Bits des 32-Bit-Wertmembers (0x00000020).
DstRectValid
Ein UINT-Wert, der angibt, ob der Bitblt einen rechteckigen Zielbereich verwendet.
Das Festlegen dieses Members entspricht dem Festlegen des siebten Bits des 32-Bit-Wertmembers (0x00000040).
SrcRectValid
Ein UINT-Wert, der angibt, ob der Bitblt einen rechteckigen Quellbereich verwendet.
Das Festlegen dieses Elements entspricht dem Festlegen des achten Bits des 32-Bit-Wertmembers (0x00000080).
RestrictVidPnSource
Ein UINT-Wert, der angibt, ob die Bitblt eingeschränkt werden soll. Wenn das hWindow-ElementNULL ist, gibt das VidPnSourceId-Element der D3DKMT_PRESENT-Struktur an, an welche Ausgabe der Vollbildbitblt gerichtet ist. wenn hWindow nicht NULL ist, gibt VidPnSourceId an, auf welche Ausgabe die Fensterbitblt beschränkt werden soll.
Das Festlegen dieses Elements entspricht dem Festlegen des neunten Bits des 32-Bit-Wertmembers (0x00000100).
SrcColorKey
Ein UINT-Wert, der angibt, ob die Quellfarbschlüsselung mithilfe des Werts im Color-Element der D3DKMT_PRESENT-Struktur ausgeführt werden soll. Das heißt, jedes Pixel auf der Quelloberfläche, das der Farbtaste entspricht, sollte nicht auf die Zieloberfläche kopiert werden, und alle Quellpixel, die nicht mit der Farbtaste übereinstimmen, sollten kopiert werden.
Das Festlegen dieses Elements entspricht dem Festlegen des zehnten Bits des 32-Bit-Wertmembers (0x00000200).
DstColorKey
Ein UINT-Wert, der angibt, ob die Zielfarbschlüsselung mithilfe des Werts im Color-Element von D3DKMT_PRESENT ausgeführt werden soll. Das heißt, jedes Pixel auf der Zieloberfläche, das der Farbtaste entspricht, sollte durch das entsprechende Pixel von der Quelloberfläche ersetzt werden, und alle Zielpixel, die nicht mit der Farbtaste übereinstimmen, sollten nicht ersetzt werden.
Das Festlegen dieses Elements entspricht dem Festlegen des elften Bits des 32-Bit-Wertmembers (0x00000400).
LinearToSrgb
Ein UINT-Wert, der angibt, ob die linear formatierte Quelle während des Kopiervorgangs in das sRGB-Format konvertiert werden soll. Das sRGB-Format ist gammakorriert. Weitere Informationen zum sRGB-Format finden Sie auf der sRGB-Website .
Das Festlegen dieses Elements entspricht dem Festlegen des zwölften Bits des 32-Bit-Wert-Members (0x00000800).
PresentCountValid
Ein UINT-Wert, der angibt, ob der im PresentCount-Member der D3DKMT_PRESENT-Struktur festgelegte Wert gültig ist.
Das Festlegen dieses Elements entspricht dem Festlegen des dreizehnten Bits des 32-Bit-Wertelements (0x00001000).
[in] Rotate
Ein UINT-Wert, der angibt, ob die Präsentationsdaten so gedreht werden sollen, dass sie der aktuellen Ausrichtung des Bildschirms während der Bitblockübertragung (Bitblt) der Präsentation entsprechen. Die aktuelle Ausrichtung des Bildschirms wird im Rotationselement einer D3DKMDT_VIDPN_PRESENT_PATH_TRANSFORMATION-Struktur festgelegt, das im ContentTransformation-Element der D3DKMDT_VIDPN_PRESENT_PATH-Struktur für den vorliegenden Videopfad festgelegt wird.
Der Anzeigeminiporttreiber sollte die Daten nur drehen, wenn das Flag "Bitfeld drehen" festgelegt ist. Selbst wenn der Treiber feststellt, dass die aktuelle Ausrichtung des Bildschirms aus den Präsentationsdaten gedreht und Rotieren nicht festgelegt ist, sollte der Treiber die Daten nicht rotieren.
Das Festlegen dieses Elements entspricht dem Festlegen des vierzehnten Bits des 32-Bit-Wertmembers (0x00002000).
PresentToBitmap
Ein UINT-Wert, der angibt, ob eine Bitmap angezeigt werden soll.
Das Festlegen dieses Elements entspricht dem Festlegen des fünfzehnten Bits des 32-Bit-Wertmembers (0x00004000).
Wird ab Windows 7 unterstützt.
RedirectedFlip
Ein UINT-Wert, der angibt, ob ein Flip auf eine neue Oberfläche umgeleitet werden soll.
Das Festlegen dieses Elements entspricht dem Festlegen des sechzehnten Bits des 32-Bit-Wertmembers (0x00008000).
Wird ab Windows 7 unterstützt.
RedirectedBlt
Ein UINT-Wert, der angibt, ob eine Bitblt auf eine neue Oberfläche umgeleitet werden soll.
Das Festlegen dieses Elements entspricht dem Festlegen des siebzehnten Bits des 32-Bit-Wert-Members (0x00010000).
Wird ab Windows 7 unterstützt.
FlipStereo
Gibt an, ob der Treiber sowohl linke als auch rechte Bilder einer Stereozuordnung umkehren soll.
Wenn das FlipOnNextVSync-Element der DXGK_SETVIDPNSOURCEADDRESS_FLAGS-Struktur festgelegt ist, sollte der Treiber auf der nächsten VSync das Umdrehen nach links abschließen und dann den Kehrvorgang zum rechten Bild auf der folgenden VSync abschließen.
Wenn das FlipImmediate-Element der DXGK_SETVIDPNSOURCEADDRESS_FLAGS-Struktur festgelegt ist, sollte der Treiber sofort mit dem Scannen aus der neuen Zuordnung beginnen. Wenn der Treiber beispielsweise ein richtiges Bild überprüft hat, sollte er die neue Überprüfung mit demselben relativen Offset im rechten Bild der neuen Zuordnung starten.
Die Elemente FlipStereo und FlipStereoTemporaryMono können nicht gleichzeitig festgelegt werden.
Weitere Anforderungen finden Sie im Abschnitt Hinweise.
Das Festlegen dieses Members entspricht dem Festlegen des achtzehnten Bits des 32-Bit-Wertmembers (0x00020000).
Wird ab Windows 8 unterstützt.
FlipStereoTemporaryMono
Gibt an, ob der Treiber das linke Bild einer Stereozuordnung für den rechten und linken Teil eines Stereoframes verwenden soll. Der Treiber führt den gleichen Vorgang wie bei FlipStereo aus, mit dem Unterschied, dass er nur aus dem linken Bild herausscannen sollte, um beide Bilder eines Stereoframes zu erzeugen.
Dieser Member sollte nur festgelegt werden, wenn der Treiber unterstützung für diese Option im aktuellen Anzeigemodus meldet, indem er das Element Typ der D3DKMDT_VIDPN_SOURCE_MODE-Struktur auf D3DKMDT_RMT_GRAPHICS_STEREO_ADVANCED_SCAN festlegt.
Die Elemente FlipStereo und FlipStereoTemporaryMono können nicht gleichzeitig festgelegt werden.
Die Elemente FlipStereoTemporaryMono und FlipStereoPreferRight können nicht gleichzeitig festgelegt werden.
Weitere Anforderungen finden Sie im Abschnitt Hinweise.
Das Festlegen dieses Members entspricht dem Festlegen des neunzehnten Bits des 32-Bit-Wertmembers (0x00040000).
Wird ab Windows 8 unterstützt.
FlipStereoPreferRight
Gibt an, dass der Treiber beim Klonen einer primären Stereozuordnung für einen Monomonitor das richtige Image verwenden soll.
Die Elemente FlipStereoTemporaryMono und FlipStereoPreferRight können nicht gleichzeitig festgelegt werden.
Weitere Anforderungen finden Sie im Abschnitt Hinweise.
Das Festlegen dieses Elements entspricht dem Festlegen des zwanzigsten Bits des 32-Bit-Wertmembers (0x00080000).
Wird ab Windows 8 unterstützt.
BltStereoUseRight
Gibt an, dass der Treiber das richtige Bild verwenden soll, wenn er von einer Stereozuordnung zu einer Monozuordnung angezeigt wird. Wenn nicht festgelegt, sollte der Treiber das linke Bild verwenden.
Das Festlegen dieses Elements entspricht dem Festlegen des einundzwanzig ersten Bits des 32-Bit-Wert-Members (0x00100000).
Wird ab Windows 8 unterstützt.
PresentHistoryTokenOnly
Gibt an, dass der Treiber nur ein vorhandenes Verlaufstoken übermitteln soll.
Ein vorhandenes Verlaufstoken ist ein Datenpaket, das die Rendering-App übermittelt, um den Desktopfenster-Manager (DWM) darüber zu informieren, dass das Rendering abgeschlossen ist und der Swap Chain-Back-Puffer bereit für die Präsentation ist.
Das Festlegen dieses Members entspricht dem Festlegen des Zwanzigsekundenbits des 32-Bit-Wertmembers (0x00200000).
Wird ab Windows 8 unterstützt.
PresentRegionsValid
Gibt an, dass der D3DKMT_PRESENT. pPresentRegions-Member ist ein gültiger Zeiger (nicht NULL).
Das Festlegen dieses Elements entspricht dem Festlegen des 32-Bit-Wertmembers (0x00400000).
Wird ab Windows 8 unterstützt.
PresentDDA
Dieser Member ist reserviert und sollte auf null festgelegt werden.
Das Festlegen dieses Elements entspricht dem Festlegen des vierundzwanzigten Bits des 32-Bit-Wertelements (0x00800000).
Wird ab Windows 8 unterstützt.
ProtectedContentBlankedOut
Dieser Member ist reserviert und sollte auf null festgelegt werden.
Das Festlegen dieses Elements entspricht dem Festlegen des fünfundzwanzigten Bits des 32-Bit-Wertmembers (0x01000000).
Wird ab Windows 8 unterstützt.
RemoteSession
Gibt an, dass der vorliegende Vorgang an eine Remotesitzung weitergeleitet wird.
Das Festlegen dieses Elements entspricht dem Festlegen des sechsundzwanzigsten Bits des 32-Bit-Wertelements (0x02000000).
Wird ab Windows 8 unterstützt.
CrossAdapter
Der Kreuzadapter.
DurationValid
Gibt an, ob die Dauer gültig ist.
PresentIndirect
Indirekt präsentieren.
PresentHMD
Reserved
Wird ab Windows 8 unterstützt.
Dieser Member ist reserviert und sollte auf null festgelegt werden. Das Festlegen dieses Elements auf 0 entspricht dem Festlegen der verbleibenden 9 Bits (0xFF800000) des 32-Bit-Wert-Members auf Nullen.
Value
Ein 32-Bit-Wert, der angibt, wie der vorliegende Vorgang ausgeführt werden soll.
Hinweise
Wenn eines der Member FlipStereo, FlipStereoTemporaryMono oder FlipStereoPreferRight festgelegt ist, gelten die folgenden Bedingungen:
- Das hAllocation-Element der DXGKARG_SETVIDPNSOURCEADDRESS-Struktur sollte auf eine Zuordnung verweisen, die mit dem Stereoelement erstellt wird, das im Flags-Element der D3DKMT_DISPLAYMODE-Struktur festgelegt ist.
- Die Member PrimarySegment und PrimaryAddress von DXGKARG_SETVIDPNSOURCEADDRESS sollten auf die physische Anfangsadresse der Zuordnung verweisen.
- Der Treiber sollte die Einstellungen der FlipImmediate - und FlipOnNextVSync-Member der DXGK_SETVIDPNSOURCEADDRESS_FLAGS-Struktur berücksichtigen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows Vista. |
Kopfzeile | d3dkmthk.h (einschließlich D3dkmthk.h) |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für