共用方式為


PFND3DDDI_SETMARKER回呼函式 (d3dumddi.h)

通知使用者模式顯示驅動程式,如果自上次呼叫 pfnSetMarker 之後,任何 GPU 工作都已完成時,它必須產生新的時間戳。 選擇性地由 Windows 顯示驅動程式模型 (WDDM) 1.3 和更新版本的驅動程序實作,在 Microsoft Direct3D 層級 9 硬體上執行。 (請參閱 Direct3D 轉譯效能改善中的需求。針對更進階的硬體,驅動程式應該實作 SetMarker 函式。

語法

PFND3DDDI_SETMARKER Pfnd3dddiSetmarker;

HRESULT Pfnd3dddiSetmarker(
  HANDLE hDevice
)
{...}

參數

hDevice

顯示裝置的句柄(圖形內容)。

傳回值

如果函式未順利完成,則傳回 S_OK 或適當的錯誤結果。

言論

如果 pfnSetMarkerMode 函式 Type 參數的標記事件類型不是 D3DDDIMT_NONE,則使用者模式顯示驅動程式必須執行此程式,且每次呼叫 pfnSetMarker

  1. 遞增 APISequenceNumber 的值,D3DDDICB_LOGUMDMARKER 結構的成員。
  2. 判斷與單個線程設備驅動器介面 (DDI) 相關聯的內容,轉譯提交的呼叫會與最後一次呼叫搭配 pfnSetMarker 使用。 針對每個這類內容:
    1. 如果內容的命令緩衝區是空的,則不執行任何動作。
    2. 否則:
      • 請確定內容歷程記錄緩衝區中有更多記憶體可用。 如有必要,請排清緩衝區。
      • 將另一個專案新增至內容 API 序號緩衝區,其中包含目前 APISequenceNumber 值的低 32 位。
      • 範例和寫出適用於目前標記事件類型的時間戳。
    3. 下次呼叫 pfnSetMarker 時,將會使用的更新追蹤數據。

要求

要求 價值
最低支援的用戶端 Windows 8.1、WDDM 1.3 及更新版本
支援的最低伺服器 Windows Server 2012 R2
目標平臺 桌面
標頭 d3dumddi.h (包括 D3d10umddi.h)

另請參閱

SetMarker

pfnSetMarkerMode