PFND3DDDI_CREATEQUERY回呼函式 (d3dumddi.h)
CreateQuery 函式會為後續Microsoft Direct3D 運行時間問題的查詢建立驅動程式端資源。
語法
PFND3DDDI_CREATEQUERY Pfnd3dddiCreatequery;
HRESULT Pfnd3dddiCreatequery(
HANDLE hDevice,
D3DDDIARG_CREATEQUERY *unnamedParam2
)
{...}
參數
hDevice
顯示裝置的句柄(圖形內容)。
unnamedParam2
pData [in, out]
識別查詢之 D3DDDIARG_CREATEQUERY 結構的指標。
傳回值
CreateQuery 會傳回下列其中一個值:
傳回碼 | 描述 |
---|---|
S_OK | 已成功建立查詢。 |
E_OUTOFMEMORY | CreateQuery 無法配置所需的記憶體,使其完成。 |
言論
Direct3D 運行時間會呼叫使用者模式顯示驅動程式的 CreateQuery 函式,並具有查詢類型來建立查詢的資源。 使用者模式顯示驅動程式會為查詢類型建立下列資源:
- 適用於D3DDDIQUERYTYPE_EVENT的BOOL。 在回應事件之前,驅動程式必須確定圖形處理單位 (GPU) 已完成處理與事件相關的所有作業。 也就是說,驅動程式會在發生問題結束狀態之後回應事件。 驅動程式在回應時,必須一律將事件的 BOOL 值設定為 TRUE。
- UINT for D3DDDIQUERYTYPE_OCCLUSION。 驅動程式會將這個 UINT 變數設定為在問題查詢的開始和結束狀態之間,針對所有基本類型通過 z 測試的像素數目。 如果深度緩衝區為多重取樣,驅動程式會從樣本數目決定像素數目。 不過,如果顯示裝置能夠針對每個多重取樣進行 z 測試精確度,則轉換成像素數目的轉換通常應該四捨五入。 然後,應用程式可以檢查 0 的遮蔽結果,以有效地表示「完全遮蔽」。 將多重取樣數量轉換成像素數量的驅動程式應該偵測轉譯目標多重取樣變更,並繼續適當地計算查詢結果。
- D3DDDIQUERYTYPE_VCACHE的 D3DDDIDEVINFO_VCACHE 結構。 驅動程式會在發生問題結束狀態之後回應。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 可在 Windows Vista 和更新版本的 Windows作系統中使用。 |
目標平臺 | 桌面 |
標頭 | d3dumddi.h (包括 D3dumddi.h) |