DXGI _ PRESENT

Die DXGI _ PRESENT-Konstanten geben Optionen für die Darstellung von Frames in der Ausgabe an.

Konstante/Wert BESCHREIBUNG
0
Stellen Sie der Ausgabe einen Frame aus jedem Puffer (beginnend mit dem aktuellen Puffer) vor.
DXGI_PRESENT_DO_NOT_SEQUENCE
0x00000002UL
Stellen Sie einen Frame aus dem aktuellen Puffer für die Ausgabe dar. Verwenden Sie dieses Flag, damit die Darstellung die Synchronisierung vertikal leerer Daten anstelle der üblichen Sequenzierung von Puffern in der Kette verwenden kann.
[!Note]
Wenn die aufrufende Anwendung die DXGI_PRESENT_DO_NOT_SEQUENCE Konstante für den ersten vorhandenen Vorgang festlegt (d. h. wenn kein aktueller Puffer vorhanden ist), ignoriert die Laufzeit diesen aktuellen Vorgang und ruft den Treiber nicht auf.

DXGI_PRESENT_TEST
0x000000001UL
Stellen Sie den Frame nicht in der Ausgabe dar. Der Status der Swapkette wird getestet, und entsprechende Fehler werden zurückgegeben. DXGI_PRESENT_TEST ist nur für den Wechsel vom Leerlaufzustand vorgesehen. Verwenden Sie sie nicht, um zu bestimmen, wann in den Leerlaufzustand gewechselt werden soll, da dadurch die Swapkette den Vollbildmodus nicht verlassen kann.
DXGI_PRESENT_RESTART
0x00000004UL
Gibt an, dass die Laufzeit ausstehende Warteschlangen-Darstellungen verwirft.
DXGI_PRESENT_DO_NOT_WAIT
0x000000008UL
Gibt an, dass die Runtime bei der Darstellung (d.amp;#160;B. bei einem Aufruf von IDXGISwapChain1::P resent1)einen Fehler mit dem DXGI_ERROR_WAS_STILL_DRAWING Fehlercode verursacht, wenn der aufrufende Thread blockiert ist. Die Runtime gibt DXGI_ERROR_WAS_STILL_DRAWING zurück, anstatt in den Ruhemodus zu übergehen, bis die Abhängigkeit aufgelöst wurde.
Direct3D 11: Dieser Enumerationswert wird ab Windows 8 unterstützt.
DXGI_PRESENT_RESTRICT_TO_OUTPUT
0x00000010UL
Gibt an, dass Präsentationsinhalte nur in der jeweiligen Ausgabe angezeigt werden. Der Inhalt ist in anderen Ausgaben nicht sichtbar. Wenn der Benutzer beispielsweise versucht, Videoinhalte in einer anderen Ausgabe zu verschieben, ist der Videoinhalt nicht sichtbar.
Direct3D 11: Dieser Enumerationswert wird ab Windows 8 unterstützt.
[!Note]
Dieses Flag sollte nur mit swap-Effekt DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL oder DXGI_SWAP_EFFECT_FLIP_DISCARD verwendet werden. Die Verwendung dieses Flags mit anderen Swapeffekten ist veraltet und funktioniert möglicherweise in zukünftigen Versionen von Windows nicht mehr.

DXGI_PRESENT_STEREO_PREFER_RIGHT
0x00000020UL
Gibt an, dass, wenn die stereo-Darstellung auf Mono reduziert werden muss, die Ansicht mit den rechten Augen anstelle der Ansicht mit den linken Augen verwendet wird.
Direct3D 11: Dieser Enumerationswert wird ab Windows 8 unterstützt.
DXGI_PRESENT_STEREO_TEMPORARY_MONO
0x00000040UL
Gibt an, dass die Darstellung den linken Puffer als Monopuffer verwenden soll. Eine Anwendung ruft die IDXGISwapChain1::IsTemporaryMonoSupported-Methode auf, um zu bestimmen, ob eine Swapkette "temporäre Mono" unterstützt.
Direct3D 11: Dieser Enumerationswert wird ab Windows 8 unterstützt.
DXGI_PRESENT_USE_DURATION
0x00000100UL
Dieses Flag muss von Medien-Apps festgelegt werden, die derzeit eine benutzerdefinierte aktuelle Dauer (benutzerdefinierte Aktualisierungsrate) verwenden. Siehe IDXGISwapChainMedia.
[!Note]
Dieser Wert wird ab Windows 8.1 unterstützt.

DXGI_PRESENT_ALLOW_TEARING
0x00000200UL
Das Zulassen des Löschens ist eine Voraussetzung für die Anzeige variabler Aktualisierungsrate.
Die Bedingungen für die Verwendung von DXGI_PRESENT_ALLOW_TEARING während Present sind wie folgt:
  • Die Swapkette muss mit dem flag DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING erstellt werden.
  • Das an Present (oder Present1)übergebene Synchronisierungsintervall muss 0 sein.
  • Das flag DXGI_PRESENT_ALLOW_TEARING kann nicht in einer Anwendung verwendet werden, die sich derzeit im exklusiven Vollbildmodus befindet (durch Aufrufen von SetFullscreenState(TRUE)festgelegt). Sie kann nur im Fenstermodus verwendet werden. Um dieses Flag in Win32-Vollbild-Apps zu verwenden, sollte die Anwendung in einem rahmenlosen Vollbildfenster angezeigt werden und den automatischen Alt+EINGABE-Vollbildwechsel mit IDXGIFactory::MakeWindowAssociationdeaktivieren. UWP-Apps, die durch Aufrufen in den Vollbildmodus wechseln, Windows::UI::ViewManagement::ApplicationView::TryEnterFullscreen() sind rahmenlose Vollbildfenster und können das -Flag verwenden.
Wenn Present (oder Present1)mit diesem Flag aufgerufen wird und die oben genannten Bedingungen nicht erfüllt werden, wird ein DXGI_ERROR_INVALID_CALL Fehler an die aufrufende Anwendung zurückgegeben.

Hinweise

Präsentationsoptionen werden während des Aufrufs IDXGISwapChain::P resent oder IDXGISwapChain1::P resent1 bereitgestellt. Die Puffer werden in der Beschreibung der Swapkette angegeben (siehe DXGI _ SWAP CHAIN _ _ DESC oder DXGI SWAP CHAIN _ _ _ DESC1).

DXGI _ PRESENT RESTART ist nur für _ Flip-Model-Swapketten und Vollbildmodus gültig. Anwendungen können DXGI PRESENT RESTART verwenden, um nach _ _ Störungen bei der Wiedergabe wiederherzustellen und zuvor in der Warteschlange enthaltene Präsentationen zu verwerfen. Das Verwerfen zuvor in der Warteschlange stehender Präsentationen ist nützlich, wenn es sich bei diesen Präsentationen in der Warteschlange um Szenarien mit Fenstern handelt. Insbesondere könnte die zuvor in der Warteschlange eingereihte Präsentation davon ausgegangen sein, dass das Fenster eine alte Größe hat (d. b. nach der Übermittlung ist ein Größenänderungsvorgang aufgetreten).

DXGI _ PRESENT RESTRICT TO OUTPUT ist nur für _ _ _ Swapketten gültig, die eine bestimmte Ausgabe angegeben haben, um den Inhalt auf zu beschränken, wenn diese Swapketten erstellt wurden (IDXGIFactory2::CreateSwapChainForHwnd). Wenn keine Ausgabe vorhanden ist, auf die eingeschränkt werden soll, ist das Flag ungültig.

DXGI _ PRESENT STEREO PREFER RIGHT gibt _ _ _ an, dass das rechte Auge anstelle des linken (Standard-) Auges verwendet werden sollte, wenn das stereo-Format auf mono reduziert werden muss. Sie können dieses Flag verwenden, wenn eine Seite eine höhere Qualität hat (z. B. wenn das Stereopaar aus einem Standardbild synthetisiert wird).

DXGI _ PRESENT STEREO TEMPORARY MONO gibt _ _ _ an, dass der aktuelle den linken Puffer als Monopuffer verwenden soll. Sie können dieses Flag verwenden, um zu vermeiden, dass der rechte Puffer aktualisiert wird, wenn eine Anwendung vorübergehend keinen Stereoinhalt hat. Sie sollten dieses Flag nach Möglichkeit verwenden, da es eine erhebliche Optimierung durch das Betriebssystem ermöglicht und unter bestimmten Umständen sichtbare Modusänderungsartefakte vermeiden kann.

Sie sollten das _ DXGI PRESENT _ STEREO _ TEMPORARY _ MONO-Flag vorziehen, um für die meisten Anwendungen, von denen Sie erwarten, dass stereo wieder verwendet wird, zu einer Mono-Swapkette zu wechseln. Sie müssen die Verwendung dieses Flags in Anwendungen, die extrem lange ausgeführt werden oder selten Stereo anzeigen, gegen den Nachteil von nicht verwendetem Arbeitsspeicher abwägen.

Hinweis

Vollbildanwendungen, die zu einer Mono-Swapkette wechseln, führen zu einer Modusänderung, die in der Regel sichtbare Artefakte enthält (z. B. "Blinken"). Temporäre Mono-Tauschketten werden jedoch möglicherweise nicht unterstützt.

Die _ DXGI PRESENT _ STEREO PREFER _ _ RIGHT- und DXGI _ PRESENT STEREO TEMPORARY _ _ _ MONO-Flags gelten nur für Stereo-Swapketten. Wenn Sie sie verwenden, wenn Sie Mono-Swapketten präsentieren, tritt ein ungültiger Vorgang auf.

Wenn Sie das _ DXGI PRESENT _ STEREO _ TEMPORARY _ MONO-Flag verwenden, wenn Sie eine Stereo-Swapkette präsentieren, die temporäre Mono nicht unterstützt, tritt ein Fehler auf, die Swapkette wird nicht angezeigt, und die Präsentation gibt DXGI ERROR INVALID _ _ _ CALLzurück.

Anforderungen

Anforderung Wert
Header
DXGI.h

Weitere Informationen

DXGI-Konstanten