Udostępnij za pośrednictwem


D3DPRESENTFLAG

Stałe używane przez D3DPRESENT_PARAMETERS.

#define Wartość Opis
D3DPRESENTFLAG_DEVICECLIP 0x00000004 Utwórz wycinkę okna Present blit w obszarze klienta okna w obszarze ekranu monitora karty wideo, która utworzyła urządzenie Direct3D. D3DPRESENTFLAG_DEVICECLIP jest nieprawidłowa w przypadku D3DSWAPEFFECT_FLIPEX.
D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL 0x00000002 Ustaw tę flagę po utworzeniu urządzenia lub łańcucha wymiany, aby włączyć odrzucanie buforu z. Jeśli ta flaga jest ustawiona, zawartość buforu wzornika głębokości będzie nieprawidłowa po wywołaniu Presentlub SetDepthStencilSurface z inną powierzchnią głębokości. Odrzucenie danych buforu z może zwiększyć wydajność i zależy od sterownika. Środowisko uruchomieniowe debugowania wymusi odrzucenie przez wyczyszczenie buforu z do pewnej wartości stałej po wywołaniu metody Presentlub SetDepthStencilSurface z inną powierzchnią głębokości.
Odrzucanie danych buforu z jest niedozwolone dla wszystkich formatów zablokowanych, D3DFMT_D16_LOCKABLE i D3DFMT_D32F_LOCKABLE. Każde użycie CreateDevice określania formatu blokady i odrzucania buforu z zakończy się niepowodzeniem. Aby uzyskać więcej informacji na temat formatów, zobacz D3DFORMAT.
D3DPRESENTFLAG_LOCKABLE_BACKBUFFER 0x00000001 Ustaw tę flagę, jeśli aplikacja wymaga bezpośredniej blokady buforu wstecznego. Należy pamiętać, że wsteczne nie są blokowane, chyba że aplikacja określa D3DPRESENTFLAG_LOCKABLE_BACKBUFFER podczas wywoływania CreateDevice lub resetowania . wsteczne z możliwością zablokowania generują koszt wydajności niektórych konfiguracji sprzętu graficznego. Wykonanie operacji blokady (lub użycie UpdateSurface do zapisu) w buforze zwrotnym z możliwością blokady zmniejsza wydajność na wielu kartach. W takim przypadku rozważ użycie teksturowanych trójkątów, aby przenieść dane do buforu wstecznego.
Różnice między direct3D 9 i Direct3D 9Ex:
W trybie Direct3D9Ex tej flagi nie można ustawić, jeśli D3DSWAPEFFECT jest D3DSWAPEFFECT_FLIPEX, ponieważ model przerzucania umożliwia Menedżerowi okien pulpitu dostęp do buforu wstecznego aplikacji. Wspólna powierzchnia między procesami nie powinna być zablokowana.

 

D3DPRESENTFLAG_NOAUTOROTATE 0x00000020 Obrócone monitory są obsługiwane automatycznie z obracającą się kopią podczas prezentacji, co nie jest bardzo wydajne. Ta flaga oznacza, że aplikacja wykona własną rotację ekranu.
Różnice między direct3D 9 i Direct3D 9Ex:
Ta flaga jest dostępna tylko w trybie Direct3D 9Ex.

 

Aplikacje mogą osiągnąć własną rotację, ewentualnie przy użyciu macierzy widoków obróconych. Metody GetDisplayModeEx i GetAdapterDisplayModeEx należy użyć do znalezienia bieżącego ustawienia obrotu. Parametry szerokości i wysokości backbuffer w CreateDeviceEx i ResetEx muszą być używane orientacji poziomej, podczas gdy struktura trybu wyświetlania pełnoekranowego powinna być taka sama jak struktura trybu wyświetlania zwrócona z EnumAdapterModesEx (tj. szerokość i wysokość są zamieniane po obróceniu 90 i 270 stopni).

W przypadku używania blokady przy obróconych miejscach docelowych renderowania założenia lewego górnego rogu nie będą już prawdziwe, docelowy SURFACE_DESC renderowania pozostanie pozioma (implikowany przez parametry tworzenia), a okno GDI, współrzędne myszy i takie elementy muszą zostać odpowiednio przetłumaczone w przypadku użycia z obiektem docelowym i sceną renderowania Direct3D.

D3DPRESENTFLAG_UNPRUNEDMODE 0x00000040 Użyj tej flagi, aby określić dowolny tryb wyświetlania RAW wyliczony przez kartę wyświetlania, mimo że funkcja Direct3D mogła wskazywać, że tryb jest nieprawidłowy. Aplikacja powinna zaimplementować to w niezawodny sposób, jeśli żądany tryb jest naprawdę nieprawidłowy.
Różnice między direct3D 9 i Direct3D 9Ex:
Ta flaga jest dostępna tylko w trybie Direct3D 9Ex.

 

D3DPRESENTFLAG_VIDEO 0x00000010 Jest to wskazówka dla sterownika, że wsteczne będą zawierać dane wideo.
D3DPRESENTFLAG_OVERLAY_LIMITEDRGB 0x00000080 Określa, czy nakładka ma pełny zakres RGB, czy ograniczony zakres RGB. Ustawienie tej flagi oznacza ograniczony zakres RGB. W ograniczonym zakresie RGB zakres RGB jest kompresowany tak, że 16:16:16:16 jest, a 235:235:235 jest biały.
Różnice między direct3D 9 i Direct3D 9Ex:
Ta flaga jest dostępna tylko w trybie Direct3D 9Ex.

 

D3DPRESENTFLAG_OVERLAY_YCbCr_BT709 0x00000100 Określa, czy nakładka to BT.601 czy BT.709. Ustawienie tej flagi wskazuje BT.709 dla telewizora o wysokiej rozdzielczości (GUR).
Różnice między direct3D 9 i Direct3D 9Ex:
Ta flaga jest dostępna tylko w trybie Direct3D 9Ex.

 

D3DPRESENTFLAG_OVERLAY_YCbCr_xvYCC 0x00000200 Określa, czy nakładka jest konwencjonalna YCbCr czy rozszerzona YCbCr (xvYCC). Ustawienie tej flagi oznacza rozszerzone YCbCr (xvYCC).
Różnice między direct3D 9 i Direct3D 9Ex:
Ta flaga jest dostępna tylko w trybie Direct3D 9Ex.

 

D3DPRESENTFLAG_RESTRICTED_CONTENT 0x00000400 Ustawienie tej flagi oznacza, że pamiętnia zawiera chronioną zawartość i automatycznie powoduje, że środowisko uruchomieniowe ograniczy dostęp do łańcucha wymiany, tak aby tylko desktop Windows Manager (DWM) mógł używać łańcucha wymiany.
Różnice między direct3D 9 i Direct3D 9Ex:
Ta flaga jest dostępna tylko w trybie Direct3D 9Ex.

 

D3DPRESENTFLAG_RESTRICT_SHARED_RESOURCE_DRIVER 0x00000800 Ustawienie tej flagi oznacza, że sterownik powinien ograniczyć dostęp do wszystkich zasobów udostępnionych utworzonych na potrzeby interakcji z usługą DWM. Obiekt wywołujący musi utworzyć uwierzytelniony kanał ze sterownikiem. Sterownik powinien następnie zezwolić na dostęp do procesów, które próbują otworzyć te udostępnione zasoby.
Różnice między direct3D 9 i Direct3D 9Ex:
Ta flaga jest dostępna tylko w trybie Direct3D 9Ex.

 

 

Te stałe są używane przez D3DPRESENT_PARAMETERS.

Informacje o stałej

Wymaganie Wartość
Nagłówek d3d9types.h
Minimalny system operacyjny Windows 98

 

stałych Direct3D