D3D11DDIARG_CREATEDEFERREDCONTEXT 結構 (d3d10umddi.h)
D3D11DDIARG_CREATEDEFERREDCONTEXT 結構描述要建立的延遲內容。
語法
typedef struct D3D11DDIARG_CREATEDEFERREDCONTEXT {
union {
#if ...
[in/out] D3D11DDI_DEVICEFUNCS *p11ContextFuncs;
#else
[in/out] struct D3D11DDI_DEVICEFUNCS *p11ContextFuncs;
#endif
#if ...
[in/out] D3D11_1DDI_DEVICEFUNCS *p11_1ContextFuncs;
#else
[in/out] struct D3D11_1DDI_DEVICEFUNCS *p11_1ContextFuncs;
#endif
#if ...
[in/out] D3DWDDM1_3DDI_DEVICEFUNCS *pWDDM1_3ContextFuncs;
#else
[in/out] struct D3DWDDM1_3DDI_DEVICEFUNCS *pWDDM1_3ContextFuncs;
#endif
#if ...
[in/out] D3DWDDM2_0DDI_DEVICEFUNCS *pWDDM2_0ContextFuncs;
#else
[in/out] struct D3DWDDM2_0DDI_DEVICEFUNCS *pWDDM2_0ContextFuncs;
#endif
#if ...
D3DWDDM2_1DDI_DEVICEFUNCS *pWDDM2_1ContextFuncs;
#else
struct D3DWDDM2_1DDI_DEVICEFUNCS *pWDDM2_1ContextFuncs;
#endif
#if ...
D3DWDDM2_2DDI_DEVICEFUNCS *pWDDM2_2ContextFuncs;
#else
struct D3DWDDM2_2DDI_DEVICEFUNCS *pWDDM2_2ContextFuncs;
#endif
#if ...
D3DWDDM2_6DDI_DEVICEFUNCS *pWDDM2_6ContextFuncs;
#else
struct D3DWDDM2_6DDI_DEVICEFUNCS *pWDDM2_6ContextFuncs;
#endif
};
[in] D3D10DDI_HDEVICE hDrvContext;
[in] D3D10DDI_HRTCORELAYER hRTCoreLayer;
union {
[in] const D3D11DDI_CORELAYER_DEVICECALLBACKS *p11UMCallbacks;
const D3DWDDM2_0DDI_CORELAYER_DEVICECALLBACKS *pWDDM2_0UMCallbacks;
const D3DWDDM2_2DDI_CORELAYER_DEVICECALLBACKS *pWDDM2_2UMCallbacks;
const D3DWDDM2_6DDI_CORELAYER_DEVICECALLBACKS *pWDDM2_6UMCallbacks;
};
[in] UINT Flags;
} D3D11DDIARG_CREATEDEFERREDCONTEXT;
成員
[in/out] p11ContextFuncs
使用者模式顯示驅動程式針對延遲內容填滿其函式數據表 的D3D11DDI_DEVICEFUNCS 結構指標。 Direct3D 執行時間會使用這些函式來與使用者模式顯示驅動程序通訊。
如需未用於延遲內容的函式清單,請參閱 排除延遲內容的 DDI 函式。
[in/out] p11_1ContextFuncs
使用者模式顯示驅動程式針對延遲內容填滿其函式數據表 的D3D11_1DDI_DEVICEFUNCS 結構指標。 Direct3D 執行時間會使用這些函式來與使用者模式顯示驅動程序通訊。
從 Windows 8 開始支援。
[in/out] pWDDM1_3ContextFuncs
使用者模式顯示驅動程式針對延後內容填滿其函式數據表的 D3DWDDM1_3DDI_DEVICEFUNCS 結構指標。 Direct3D 執行時間會使用這些函式來與使用者模式顯示驅動程序通訊。
從 Windows 8.1 開始支援。
[in/out] pWDDM2_0ContextFuncs
使用者模式顯示驅動程式填滿 WDDM 2.0 裝置函式數據表 的D3DWDDM2_0DDI_DEVICEFUNCS 結構指標。 Direct3D 執行時間會使用這些函式來與使用者模式顯示驅動程序通訊。
pWDDM2_1ContextFuncs
使用者模式顯示驅動程式填滿 WDDM 2.1 裝置函式數據表 的D3DWDDM2_1DDI_DEVICEFUNCS 結構指標。 Direct3D 執行時間會使用這些函式來與使用者模式顯示驅動程序通訊。
pWDDM2_2ContextFuncs
使用者模式顯示驅動程式針對WDDM 2.2 填滿其裝置函式數據表 的D3DWDDM2_2DDI_DEVICEFUNCS 結構指標。 Direct3D 執行時間會使用這些函式來與使用者模式顯示驅動程序通訊。
pWDDM2_6ContextFuncs
使用者模式顯示驅動程式填滿 WDDM 2.6 裝置函式數據表 的D3DWDDM2_6DDI_DEVICEFUNCS 結構指標。 Direct3D 執行時間會使用這些函式來與使用者模式顯示驅動程序通訊。
[in] hDrvContext
驅動程式私人句柄記憶體的驅動程序內容句柄。
[in] hRTCoreLayer
驅動程式在呼叫 Direct3D 運行時間時應該使用的句柄,以存取核心 Direct3D 11 功能 (,也就是當驅動程式呼叫 p11UMCallbacks 成員指定) 的函式時。
[in] p11UMCallbacks
D3D11DDI_CORELAYER_DEVICECALLBACKS 結構的指標,其中包含驅動程式可用來存取核心使用者模式運行時間功能之 Direct3D 11 執行時間回呼函式的 WDDM 2.0 函式數據表。
pWDDM2_0UMCallbacks
包含 Direct3D 11 核心層裝置回呼函式的 WDDM 2.0 函式數據表的 D3DWDDM2_0DDI_CORELAYER_DEVICECALLBACKS 結構指標,驅動程式可用來存取核心使用者模式運行時間功能。
pWDDM2_2UMCallbacks
包含 Direct3D 11 核心層裝置回呼函式的 WDDM 2.2 函式數據表的 D3DWDDM2_2DDI_CORELAYER_DEVICECALLBACKS 結構指標,驅動程式可用來存取核心使用者模式運行時間功能。
pWDDM2_6UMCallbacks
包含 Direct3D 11 核心層裝置回呼函式的 WDDM 2.6 函式數據表的 D3DWDDM2_6DDI_CORELAYER_DEVICECALLBACKS 結構指標,驅動程式可用來存取核心使用者模式運行時間功能。
[in] Flags
識別如何建立轉譯裝置的有效位 OR D3D10DDI_CREATEDEVICE_FLAG_XXX 旗標值。 Direct3D 運行時間支援下列旗標:
旗標 | 意義 |
---|---|
D3D10DDI_CREATEDEVICE_FLAG_DISABLE_EXTRA_THREAD_CREATION (0x1) | 設定時,當使用者模式顯示驅動程序處理從 Direct3D 執行時間呼叫其函式時,不應該同時執行多個線程。 除非已設定D3D10DDI_CREATEDEVICE_FLAG_DISABLE_EXTRA_THREAD_CREATION,否則驅動程式通常可以啟動並執行多個線程,以更快處理作業。 |
D3D11DDI_CREATEDEVICE_FLAG_SINGLETHREADED (0x10) | 此旗標會通知使用者模式顯示驅動程式應用程式為單個線程。 如果驅動程式允許此作業模式,Direct3D 11 版運行時間可讓多個應用程式線程進入驅動程式。 不過,並非所有應用程式都可以執行多個線程。 如果已設定此旗標,驅動程式將不會預期有多個線程輸入並同時執行。 如果此旗標存在,驅動程式可以避免同步處理。 |
在 Flags 成員的0xE遮罩中設定的旗標 | 此旗標代表驅動程式應該支持顯示裝置的 3D 管線層級。 驅動程式會使用下列常數和宏,從代表支援 3D 管線層級的 D3D11DDI_3DPIPELINELEVEL 列舉中擷取其中一個值。 |
Flags 成員中的值的格式會像D3D11DDI_3DPIPELINESUPPORT_CAPS結構的 Caps 成員一樣。
#define D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_SHIFT (0x1)
#define D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_MASK (0x7 << D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_SHIFT)
#define D3D11DDI_EXTRACT_3DPIPELINELEVEL_FROM_FLAGS( Flags ) \
((D3D11DDI_3DPIPELINELEVEL)(((Flags) & D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_MASK) >> \
D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_SHIFT))
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 7 |
標頭 | d3d10umddi.h (include D3d10umddi.h) |
另請參閱
D3D11DDI_3DPIPELINESUPPORT_CAPS