DXGK_PRESENTFLAGS 結構 (d3dkmddi.h)
DXGK_PRESENTFLAGS 結構會識別位字段旗標中要執行的目前作業類型。
語法
typedef struct _DXGK_PRESENTFLAGS {
union {
struct {
UINT Blt : 1;
UINT ColorFill : 1;
UINT Flip : 1;
UINT FlipWithNoWait : 1;
UINT SrcColorKey : 1;
UINT DstColorKey : 1;
UINT LinearToSrgb : 1;
UINT Rotate : 1;
UINT FlipStereo : 1;
UINT FlipStereoTemporaryMono : 1;
UINT FlipStereoPreferRight : 1;
UINT BltStereoUseRight : 1;
UINT FlipWithMultiPlaneOverlay : 1;
UINT RedirectedFlip : 1;
#if ...
UINT Reserved : 18;
#elif
UINT Reserved : 19;
#else
UINT Reserved : 24;
#endif
};
[in] UINT Value;
};
} DXGK_PRESENTFLAGS;
成員
[in] Blt
UINT 值,指定複製作業是否發生在來源和目的地介面之間,而不是翻轉作業。
設定此成員相當於設定 32 位 Value 成員的第一個位 (0x00000001) 。
[in] ColorFill
UINT 值,指定來源是否存在來呈現來源。 如果設定此成員,則來源不存在,驅動程式應該使用DXGKARG_PRESENT結構的 Color 成員所指定的A8R8G8B8色彩填滿目的地介面上的目的地矩形。
設定此成員相當於設定 32 位 Value 成員的第二個位 (0x00000002) 。
[in] Flip
UINT 值,指定翻轉作業是否發生在背面和主要表面之間。 如果設定此成員,驅動程式應該藉由將視訊掃描輸出指向來源,而不是從來源複製到目的地,來執行目前作業。 這種類型的目前作業是無卸除作業。
設定此成員相當於設定 32 位 Value 成員的第三個位 (0x00000004) 。
[in] FlipWithNoWait
UINT 值,指定無卸除翻轉作業是否不應該停止圖形管線。 如果無卸除翻轉停止圖形管線,圖形處理單位 (GPU) 必須先等待無卸除翻轉生效,再執行後續命令。
FlipWithNoWait 可以設定為 TRUE (,也就是說,只有當顯示迷你埠驅動程式在呼叫驅動程式的 DxgkDdiQueryAdapterInfo 函式時,DXGK_DRIVERCAPS 結構的FlipCaps 成員中設定 FlipOnVSyncWithNoWait 位字段旗標 DXGKQAITYPE_DRIVERCAPS時,DXGKARG_QUERYADAPTERINFO 才能將 1) 設定為 TRUE。
設定此成員相當於設定 32 位 Value 成員的第四個位 (0x00000008) 。
[in] SrcColorKey
UINT 值,指定是否要使用 DXGKARG_PRESENT 結構的 Color 成員中的值來執行來源色彩索引鍵。 也就是說,符合色彩索引鍵的來源介面中的任何圖元不應複製到目的地介面,而且應該複製不符合色彩索引鍵的所有來源圖元。
設定此成員相當於設定 32 位 Value 成員的第五個位 (0x00000010) 。
[in] DstColorKey
UINT 值,指定是否要使用 DXGKARG_PRESENT 結構的 Color 成員中的值來執行目的地色彩索引鍵。 也就是說,符合色彩索引鍵之目的介面中的任何像素都應該以來源表面的對應圖元取代,而且不應取代不符合色彩索引鍵的所有目的地圖元。
設定此成員相當於設定 32 位 Value 成員 (0x00000020) 的第六個位。
[in] LinearToSrgb
UINT 值,指定是否要在複製作業期間將線性格式的來源轉換成 sRGB 格式。 sRGB 格式已更正 gamma。 如需 sRGB 格式的詳細資訊,請造訪 sRGB 網站。
設定此成員相當於設定 32 位 Value 成員的第七位 (0x00000040) 。
[in] Rotate
UINT 值,指定是否要在簡報位區塊傳輸 (bitblt) 期間旋轉簡報數據,以符合畫面的目前方向。 畫面的目前方向是在D3DKMDT_VIDPN_PRESENT_PATH_TRANSFORMATION結構的 Rotation 成員中設定,該成員是在影片呈現路徑之D3DKMDT_VIDPN_PRESENT_PATH結構的 ContentTransformation 成員中設定。
只有在設定 [旋轉 位字段] 旗標時,顯示迷你埠驅動程式才應該旋轉數據。 即使驅動程序判斷螢幕的目前方向是從簡報數據旋轉,而且未設定 Rotate ,驅動程式不應該旋轉數據。
設定這個成員相當於設定 32 位 Value 成員的第八位 (0x00000080) 。
[in] FlipStereo
指定驅動程式是否應該翻轉立體聲配置的左右影像。
如果已設定DXGK_SETVIDPNSOURCEADDRESS_FLAGS結構的 FlipOnNextVSync 成員,驅動程式應該會在下一個 VSync 上完成左影像的翻轉,然後在下列 VSync 上完成向右影像的翻轉。
如果已設定 DXGK_SETVIDPNSOURCEADDRESS_FLAGS 結構的 FlipImmediate 成員,驅動程式應該會立即開始從新的配置中掃描。 例如,如果驅動程式正在掃描正確的影像,它應該從新配置右影像中的相同相對位移啟動新的掃描。
FlipStereo 和FlipStereoTemporaryMono 成員不能同時設定。
如需更多需求,請參閱一節。
設定此成員相當於設定 32 位 Value 成員的第九位 (0x00000100) 。
從 Windows 8 開始支援。
[in] FlipStereoTemporaryMono
指定驅動程式是否應該針對立體聲框架的右邊和左部分使用立體聲配置的左影像。 驅動程式會執行與 FlipStereo 相同的目前作業,不同之處在於它應該只從左側影像掃描,以產生立體聲框架的兩個影像。
只有當驅動程式報告目前顯示模式中此選項的支援時,才應該設定這個成員,方法是將D3DKMDT_VIDPN_SOURCE_MODE結構的 Type 成員設定為D3DKMDT_RMT_GRAPHICS_STEREO_ADVANCED_SCAN。
FlipStereo 和FlipStereoTemporaryMono 成員不能同時設定。
FlipStereoTemporaryMono 和 FlipStereoPreferRight 成員不能同時設定。
如需更多需求,請參閱一節。
設定此成員相當於設定 32 位 Value 成員的第十位 (0x00000200) 。
從 Windows 8 開始支援。
[in] FlipStereoPreferRight
指定當驅動程式將立體聲主要配置複製到單聲道監視器時,應該使用正確的影像。
FlipStereoTemporaryMono 和 FlipStereoPreferRight 成員不能同時設定。
如需更多需求,請參閱一節。
設定此成員相當於設定 32 位 Value 成員的第十一位 (0x00000400) 。
從 Windows 8 開始支援。
[in] BltStereoUseRight
指定當驅動程式從立體聲配置呈現到單聲道配置時,應該使用正確的影像。 如果未設定,驅動程式應該使用左映像。
設定此成員相當於設定 32 位 Value 成員的第十二位 (0x00000800) 。
從 Windows 8 開始支援。
[in] FlipWithMultiPlaneOverlay
指定重疊平面與主要表面之間是否發生翻轉作業。 如果設定此成員,驅動程式應該將視訊掃描輸出指向來源平面,而不是從來源平面複製到目的地,來執行目前作業。
設定此成員相當於設定 32 位 Value 成員的第十三位 (0x00001000) 。
從 Windows 8.1 開始支援。
RedirectedFlip
[in] Reserved
這個成員是保留的,而且應該設定為零。
將此成員設定為零相當於將 32 位 Value 成員的剩餘 19 位設定為零 (0xFFFFE000) 。
從 Windows 8 開始支援。
[in]這個成員是保留的,而且應該設定為零。
將此成員設定為零相當於將 32 位 Value 成員的剩餘 24 位 (0xFFFFFF00) 設定為零。
[in] Value
DXGK_PRESENTFLAGS的等位成員包含可保存 32 位值,以識別要執行的目前作業類型。
備註
ColorFill、SrcColorKey 和 DstColorKey 位欄位旗標互斥。
如果已設定任何 FlipStereo、FlipStereoTemporaryMono 或 FlipStereoPreferRight 成員,則適用下列條件:
- DXGKARG_SETVIDPNSOURCEADDRESS 結構的 hAllocation 成員應該指向在 D3DKMT_DISPLAYMODE 結構的 Flags 成員中設定的 Stereo 成員所建立的配置。
- DXGKARG_SETVIDPNSOURCEADDRESS的 PrimarySegment 和 PrimaryAddress 成員應該指向配置的起始實體位址。
- 驅動程式應接受 DXGK_SETVIDPNSOURCEADDRESS_FLAGS 結構的 FlipImmediate 和 FlipOnNextVSync 成員的設定。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista |
標頭 | d3dkmddi.h (包含 D3dkmddi.h) |
另請參閱
D3DKMDT_VIDPN_PRESENT_PATH_TRANSFORMATION