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
D3DWDDM2_0DDI_CORELAYER_DEVICECALLBACKS 結構的指標,其中包含驅動程式可用來存取核心使用者模式運行時間功能的 Direct3D 11 核心層裝置回呼函式 WDDM 2.0 函式數據表。
pWDDM2_2UMCallbacks
D3DWDDM2_2DDI_CORELAYER_DEVICECALLBACKS 結構的指標,其中包含驅動程式可用來存取核心使用者模式運行時間功能的 Direct3D 11 核心層裝置回呼函式 WDDM 2.2 函式數據表。
pWDDM2_6UMCallbacks
D3DWDDM2_6DDI_CORELAYER_DEVICECALLBACKS 結構的指標,其中包含驅動程式可用來存取核心使用者模式運行時間功能的 Direct3D 11 核心層裝置回呼函式 WDDM 2.6 函式數據表。
[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 管線層級。 驅動程式會使用下列常數和巨集,從 D3D11DDI_3DPIPELINELEVEL 列舉中擷取其中一個值,這些值代表要支援的 3D 管線層級。 |
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 (包括 D3d10umddi.h) |
另請參閱
D3D11DDI_3DPIPELINESUPPORT_CAPS