LPD3DHAL_CONTEXTCREATECB回呼函式 (d3dhal.h)
D3dContextCreate 函式會建立內容。
語法
LPD3DHAL_CONTEXTCREATECB Lpd3dhalContextcreatecb;
DWORD Lpd3dhalContextcreatecb(
LPD3DHAL_CONTEXTCREATEDATA unnamedParam1
)
{...}
參數
unnamedParam1
pccd [in]
指向 D3DHAL_CONTEXTCREATEDATA 結構,其中包含建立內容所需的資訊,以及驅動程式應該儲存在新內容中的數據。
傳回值
D3dContextCreate 會 傳回下列其中一個回呼代碼:
備註
D3dContextCreate 必須在支援 Microsoft Direct3D 的驅動程序中實作。 它應該執行下列步驟:
- 使用驅動程式執行轉譯所需的所有資訊,初始化驅動程序的內容。 這包括將D3DHAL_CONTEXTCREATEDATA結構中 lpDDSLcl 和 lpDDSZLcl 成員分別指向內容的轉譯目標和深度緩衝區建立關聯。
- 產生這個新內容的唯一內容標識符,並在 D3DHAL_CONTEXTCREATEDATA 的 dwhContext 成員中傳回它。 Direct3D 會在後續對這個 Direct3D 裝置所做的每次回呼中使用此內容識別碼。 驅動程序絕對不能建立零的內容句柄。
- 將 D3DHAL_CONTEXTCREATEDATA 的 ddrval 成員設定為成功時DD_OK,並在無法建立內容時D3DHAL_OUTOFCONTEXTS。
- 傳回DDHAL_DRIVER_HANDLED。
狀態不會在內容之間共用;因此,驅動程式必須維護每個內容的完整狀態資訊。 任何後續對 D3dDrawPrimitives2 的呼叫都會變更此狀態。
驅動程式必須能夠參考內容內建立的所有紋理句柄。 然後,當進行 D3dContextDestroy 呼叫時,驅動程式就可以清除與此內容中建立之紋理相關的所有驅動程式特定數據。
您可以使用停用的 PDEV 呼叫 D3dContextCreate。 呼叫顯示器驅動程式的 DrvAssertMode 函式,以停用或啟用PDEV。 如需詳細資訊 ,請參閱管理 PDEV 。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | d3dhal.h (包含 D3dhal.h) |