IDirect3D9Ex::CreateDeviceEx 方法 (d3d9.h)
建立代表顯示介面卡的裝置。
語法
HRESULT CreateDeviceEx(
[in] UINT Adapter,
[in] D3DDEVTYPE DeviceType,
[in] HWND hFocusWindow,
[in] DWORD BehaviorFlags,
[in, out] D3DPRESENT_PARAMETERS *pPresentationParameters,
[in, out] D3DDISPLAYMODEEX *pFullscreenDisplayMode,
[out, retval] IDirect3DDevice9Ex **ppReturnedDeviceInterface
);
參數
[in] Adapter
類型: UINT
代表顯示配接器的序數位。 D3DADAPTER_DEFAULT 一律是主要顯示介面卡。
[in] DeviceType
類型: D3DDEVTYPE
指定裝置的類型。 請參閱 D3DDEVTYPE。 如果所需的裝置類型無法使用,方法將會失敗。
[in] hFocusWindow
類型: HWND
當應用程式從前景模式切換到背景模式時,焦點視窗會警示 Direct3D。 針對全螢幕模式,指定的視窗必須是最上層視窗。 若為視窗模式 ,只有當 pPresentationParameters 的 hDeviceWindow 成員設定為有效的非 Null 值時,此參數才可為Null 。
[in] BehaviorFlags
類型: DWORD
一或多個選項的組合 (請參閱控制裝置建立的 D3DCREATE) 。
[in, out] pPresentationParameters
D3DPRESENT_PARAMETERS結構的指標,描述要建立之裝置的簡報參數。 如果 BehaviorFlags 指定 D3DCREATE_ADAPTERGROUP_DEVICE,則此參數為數組。 不論存在的頭部數目為何,系統都會自動建立一個深度/樣板表面。
此參數同時是輸入和輸出參數。 呼叫此方法可能會變更數個成員,包括:
- 如果呼叫 方法之前,BackBufferCount、BackBufferWidth 和 BackBufferHeight 為 0,則方法傳回時將會變更它們。
- 如果在呼叫 方法之前,BackBufferFormat 等於 D3DFMT_UNKNOWN ,當方法傳回時,將會變更它。
[in, out] pFullscreenDisplayMode
類型: D3DDISPLAYMODEEX*
當裝置設定為全螢幕時的顯示模式。 請參閱 D3DDISPLAYMODEEX。 如果 BehaviorFlags 指定 D3DCREATE_ADAPTERGROUP_DEVICE,則此參數為數組。 此參數必須是視窗模式的 Null 。
[out, retval] ppReturnedDeviceInterface
類型: IDirect3DDevice9Ex**
所傳回 之 IDirect3DDevice9Ex指標的位址,代表已建立的裝置。
傳回值
類型: HRESULT
當轉譯裝置與交換鏈緩衝區成功建立時,這個方法會傳回S_OK。 當遇到無效呼叫端輸入以外的任何錯誤時,就會傳回D3DERR_DEVICELOST。
需求
目標平台 | Windows |
標頭 | d3d9.h |
程式庫 | D3D9.lib |