Dela via


D3DPRESENTFLAG

Konstanter som används av D3DPRESENT_PARAMETERS.

#define Värde Beskrivning
D3DPRESENTFLAG_DEVICECLIP 0x00000004 Klipp ut ett fönster Presentera blit i fönstrets klientområde, inom skärmområdet för grafikkortet som skapade Direct3D-enheten. D3DPRESENTFLAG_DEVICECLIP är inte giltigt med D3DSWAPEFFECT_FLIPEX.
D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL 0x00000002 Ange den här flaggan när enheten eller växlingskedjan skapas för att aktivera z-buffertborttagning. Om den här flaggan anges är innehållet i djupstencilbufferten ogiltigt efter att antingen Presenteller SetDepthStencilSurface med en annan djupyta. Att ta bort z-buffertdata kan öka prestandan och är beroende av drivrutinen. Felsökningskörningen framtvingar ignorerande genom att rensa z-bufferten till ett visst konstant värde efter att ha anropat antingen Presenteller SetDepthStencilSurface med en annan djupyta.
Det är inte tillåtet att ta bort z-buffertdata för alla låsbara format, D3DFMT_D16_LOCKABLE och D3DFMT_D32F_LOCKABLE. All användning av CreateDevice att ange ett låsbart format och z-bufferten ignoreras misslyckas. Mer information om format finns i D3DFORMAT.
D3DPRESENTFLAG_LOCKABLE_BACKBUFFER 0x00000001 Ange den här flaggan om programmet kräver möjligheten att låsa bufferten direkt. Observera att serverbuffertar inte är låsbara om inte programmet anger D3DPRESENTFLAG_LOCKABLE_BACKBUFFER när CreateDevice- eller Återställanropas. Låsbara serverbuffertar medför en prestandakostnad för vissa maskinvarukonfigurationer för grafik. Om du utför en låsåtgärd (eller använder UpdateSurface för att skriva) på den låsbara bufferten minskar prestandan på många kort. I det här fallet bör du överväga att använda strukturerade trianglar för att flytta data till den bakre bufferten.
Skillnader mellan Direct3D 9 och Direct3D 9Ex:
I Direct3D9Ex går det inte att ange den här flaggan om D3DSWAPEFFECT är D3DSWAPEFFECT_FLIPEX, eftersom växlingsmodellen gör det möjligt för Skrivbordsfönsterhanteraren att komma åt ett programs buffert. En delad yta mellan processer bör inte vara låst.

 

D3DPRESENTFLAG_NOAUTOROTATE 0x00000020 Roterade bildskärmar hanteras automatiskt med en roterande kopia under presentationen, vilket inte är särskilt effektivt. Den här flaggan innebär att programmet utför sin egen visningsrotation.
Skillnader mellan Direct3D 9 och Direct3D 9Ex:
Den här flaggan är endast tillgänglig i Direct3D 9Ex.

 

Program kan uppnå sin egen rotation möjligen med hjälp av en roterad vymatris. Metoderna GetDisplayModeEx och GetAdapterDisplayModeEx ska användas för att hitta den aktuella rotationsinställningen. Parametrarna backbuffer Width och Height i CreateDeviceEx och ResetEx måste använda liggande orientering, medan helskärmsvisningslägesstrukturen ska vara densamma som den som returneras från EnumAdapterModesEx (d.v.s. Bredd och höjd byts när de roteras 90 och 270 grader).

När du använder Lås på roterade återgivningsmål, antaganden i det övre vänstra hörnet inte längre är sanna, förblir återgivningsmålet SURFACE_DESC liggande (vilket anges av skapandeparametrarna) och GDI-fönstret, muskoordinaterna och sådant måste översättas korrekt när det används med Direct3D-återgivningsmålet och scenen.

D3DPRESENTFLAG_UNPRUNEDMODE 0x00000040 Använd den här flaggan om du vill ange ett RAW-visningsläge som räknas upp av bildskärmskortet, även om Direct3D kan ha indikerat att läget är ogiltigt. Programmet bör implementera detta på ett robust sätt om önskat läge verkligen är ogiltigt.
Skillnader mellan Direct3D 9 och Direct3D 9Ex:
Den här flaggan är endast tillgänglig i Direct3D 9Ex.

 

D3DPRESENTFLAG_VIDEO 0x00000010 Det här är ett tips till drivrutinen om att de bakre buffertarna innehåller videodata.
D3DPRESENTFLAG_OVERLAY_LIMITEDRGB 0x00000080 Anger om överlägget är RGB eller RGB med begränsat intervall. Om du anger den här flaggan anges RGB med begränsat intervall. I RGB med begränsat intervall komprimeras RGB-intervallet så att 16:16:16 är svart och 235:235:235 är vitt.
Skillnader mellan Direct3D 9 och Direct3D 9Ex:
Den här flaggan är endast tillgänglig i Direct3D 9Ex.

 

D3DPRESENTFLAG_OVERLAY_YCbCr_BT709 0x00000100 Anger om överlägget är BT.601 eller BT.709. Om du anger den här flaggan anges BT.709 för HDTV (HDTV).
Skillnader mellan Direct3D 9 och Direct3D 9Ex:
Den här flaggan är endast tillgänglig i Direct3D 9Ex.

 

D3DPRESENTFLAG_OVERLAY_YCbCr_xvYCC 0x00000200 Anger om överlägget är konventionellt YCbCr eller utökad YCbCr (xvYCC). Om du anger den här flaggan anges utökad YCbCr (xvYCC).
Skillnader mellan Direct3D 9 och Direct3D 9Ex:
Den här flaggan är endast tillgänglig i Direct3D 9Ex.

 

D3DPRESENTFLAG_RESTRICTED_CONTENT 0x00000400 Om du anger den här flaggan anger du att växlingskedjan innehåller skyddat innehåll och automatiskt gör att körningen begränsar åtkomsten till växlingskedjan så att endast Desktop Windows Manager (DWM) kan använda växlingskedjan.
Skillnader mellan Direct3D 9 och Direct3D 9Ex:
Den här flaggan är endast tillgänglig i Direct3D 9Ex.

 

D3DPRESENTFLAG_RESTRICT_SHARED_RESOURCE_DRIVER 0x00000800 Om du anger den här flaggan anger du att drivrutinen ska begränsa åtkomsten till alla delade resurser som skapas för DWM-interaktion. Anroparen måste skapa en autentiserad kanal med drivrutinen. Drivrutinen bör sedan tillåta åtkomst till processer som försöker öppna de delade resurserna.
Skillnader mellan Direct3D 9 och Direct3D 9Ex:
Den här flaggan är endast tillgänglig i Direct3D 9Ex.

 

 

Dessa konstanter används av D3DPRESENT_PARAMETERS.

Konstant information

Krav Värde
Rubrik d3d9types.h
Lägsta operativsystem Windows 98

 

Direct3D-konstanter