共用方式為


D3DPRESENT

描述配接器重新整理速率與 PresentPresent 作業完成的速率之間的關聯性。 這些值也會作為 D3DCAPS9之 PresentationIntervals 欄位的旗標值。

常數 描述
D3DPRESENT_DONOTFLIP
在轉譯期間,使用前端緩衝區作為來源和目標表面。 畫面格同步處理已排程,但顯示介面不會變更。 只有在應用程式處於全螢幕模式且已指定D3DSWAPEFFECT_FLIPEX時,才能使用此旗標。
此旗標僅適用于 Direct3D 9Ex。
D3DPRESENT_DONOTWAIT
簡報無法由 hal 裝置排程。 如果在對 Present的呼叫中設定此旗標,而且硬體正在忙碌處理或等候垂直同步間隔,則 Present 會傳回D3DERR_WASSTILLDRAWING,表示 blit 作業不完整。
D3DPRESENT_FLIPRESTART
保留的。
D3DPRESENT_FORCEIMMEDIATE
Present 呼叫會強制執行D3DPRESENT_INTERVAL_IMMEDIATE。 只有在使用 D3DSWAPEFFECT_FLIPEX 時,才能指定此旗標。 視窗化和全螢幕簡報行為相同。 這特別適用于想要捨棄已偵測到為晚期且在組合時間呈現後續畫面的媒體應用程式。 如果未正確指定此旗標,則會傳回不正確參數錯誤。 當已排入D3DPRESENT_FORCEIMMEDIATEs的多個連續畫面時,只會針對視窗式和全螢幕簡報顯示最後一個畫面。
此旗標適用于 Windows 7 或更新版本作業系統上的 Direct3D 9Ex。
使用D3DSWAPEFFECT_FLIPEX時,使用D3DPRESENT_INTERVAL_IMMEDIATE或D3DPRESENT_INTERVAL_FORCEIMMEDIATE呈現的每個畫面都會覆寫上一個畫面的目前間隔。 例如,如果您使用下列交換效果將下列畫面排入佇列:框架 A (D3DPRESENT_INTERVAL_ONE) 、框架 B (D3DPRESENT_INTERVAL_ONE) 、框架 C (D3DPRESENT_INTERVAL_ONE) 、框架 D (D3DPRESENT_INTERVAL_FORCEIMMEDIATE) ,畫面 D 會覆寫畫面 C 的目前間隔。 每個目前間隔顯示的畫面格是框架 A、框架 B、 (框架 C,由) 框架 D 覆寫。
請參閱<備註>。
D3DPRESENT_INTERVAL_DEFAULT
這幾乎相當於D3DPRESENT_INTERVAL_ONE。 請參閱<備註>。
D3DPRESENT_INTERVAL_ONE
驅動程式會等候垂直回溯期間, (執行時間會「跟著」,以避免) 卸載。 目前 作業不會比螢幕重新整理更頻繁地受到影響;執行時間最多會在每個介面卡重新整理期間完成一個 Present 作業。 這相當於在 DirectX 8.1 中使用 D3DSWAPEFFECT_COPYVSYNC。 此選項一律適用于視窗式和全螢幕交換鏈結。 請參閱<備註>。
D3DPRESENT_INTERVAL_TWO
驅動程式會等候垂直回溯期間。 目前 作業不會比每秒螢幕重新整理更頻繁地受到影響。 請檢查 PresentationIntervals cap (請參閱 D3DCAPS9) ,以查看驅動程式是否支援D3DPRESENT_INTERVAL_TWO。
D3DPRESENT_INTERVAL_THREE
驅動程式會等候垂直回溯期間。 目前 作業不會比每三個螢幕重新整理更頻繁地受到影響。 請檢查 PresentationIntervals cap (請參閱 D3DCAPS9) ,以查看驅動程式是否支援D3DPRESENT_INTERVAL_THREE。
D3DPRESENT_INTERVAL_FOUR
驅動程式會等候垂直回溯期間。 目前 作業不會比每四個螢幕重新整理更頻繁地受到影響。 請檢查 PresentationIntervals 成員 (請參閱 D3DCAPS9) ,以查看驅動程式是否支援D3DPRESENT_INTERVAL_FOUR。
D3DPRESENT_INTERVAL_IMMEDIATE
執行時間會立即更新視窗工作區,而且可能會在配接器重新整理期間多次執行此動作。 這相當於在 DirectX 8 中使用 D3DSWAPEFFECT_COPY。 目前 作業可能會立即受到影響。 此選項一律適用于視窗式和全螢幕交換鏈結。 請參閱<備註>。
D3DPRESENT_LINEAR_CONTENT
要呈現的背景緩衝區內容位於線性色彩空間中。
  • 簡報會隱含地從線性空間轉換成 sRGB (gamma = 2.2) 。 這是唯一支援的轉換。
  • 由於此旗標代表背景緩衝區內容的 屬性,因此您可以在 Present 呼叫期間指定旗標。 換句話說,應用程式可以在一個框架中呈現線性內容,然後在下一個畫面中切換至更正的內容。
  • 當交換鏈結為全螢幕時,會忽略此旗標。 (請注意,此旗標僅適用于 Present的明確交換鏈結版本。 Present 方法不接受 flags 參數。)
  • 一律接受此旗標,但只有在驅動程式公開 > D3DCAPS3_LINEAR_TO_SRGB_PresentATION時才會生效。
  • 唯一支援的背景緩衝區格式是 X8R8G8B8
請參閱 視窗交換鏈結
D3DPRESENT_VIDEO_RESTRICT_TO_MONITOR
將轉譯的內容裁剪到介面卡的目標監視器/裝置,並在其他監視器上顯示 Flip3D 檢視和工作列縮圖中內容的縮圖。
此旗標僅適用于 Direct3D 9Ex。
如需 Windows Vista 此功能的進一步詳細資料,請參閱 桌面視窗管理員 。 如果您未在桌面組合模式中執行,旗標會提供 與D3DPRESENTFLAG_DEVICECLIP相同的行為。
注意: 此旗標只能與交換效果搭配使用D3DSWAPEFFECT_FLIPEX。 此旗 標與其他交換 效果的用法已被取代,而且可能無法在未來的 Windows 版本中運作。
D3DPRESENT_UPDATEOVERLAYONLY
更新重迭位置或色彩索引鍵資料,而不會造成實際翻轉,也不會變更顯示影像的持續時間。
此旗標僅適用于 Direct3D 9Ex。
D3DPRESENT_HIDEOVERLAY
關閉重迭硬體。
此旗標僅適用于 Direct3D 9Ex。
D3DPRESENT_UPDATECOLORKEY
重繪 colorkey 資料。
此旗標僅適用于 Direct3D 9Ex。

備註

視窗模式支援D3DPRESENT_INTERVAL_DEFAULT、D3DPRESENT_INTERVAL_IMMEDIATE和D3DPRESENT_INTERVAL_ONE。 D3DPRESENT_INTERVAL_DEFAULT和D3DPRESENT_INTERVAL_ONE幾乎相等 (請參閱下列) 計時器解析度的相關資訊。 它們執行的方式與COPY_VSYNC類似,其中每個畫面只有一個存在,而且會防止使用如下的光線來卸載。 相反地,D3DPRESENT_INTERVAL_IMMEDIATE會嘗試提供無限制的簡報速率。

不論重新整理速率或交換效果為何,全螢幕模式都支援與視窗模式類似的使用方式D3DPRESENT_INTERVAL_IMMEDIATE。 D3DPRESENT_INTERVAL_DEFAULT會使用預設的系統計時器解析度,而 D3DPRESENT_INTERVAL_ONE 會呼叫 timeBeginPeriod 來增強系統計時器解析度。 這可改善垂直同步處理的品質,但會耗用更多處理時間。 這兩個參數都會嘗試垂直同步處理。

規格需求

需求
標頭
D3d9.h

另請參閱

Direct3D 常數