PFND3DDDI_SETMARKERMODE コールバック関数 (d3dumddi.h)

Windows イベント トレース (ETW) マーカー イベントの種類をサポートする必要があることをユーザー モード ディスプレイ ドライバーに通知します。 必要に応じて、Microsoft Direct3D レベル 9 ハードウェアで実行されている Windows ディスプレイ ドライバー モデル (WDDM) 1.3 以降のドライバーによって実装されます。 ( Direct3D レンダリングのパフォーマンスの向上に関する要件を参照してください)。より高度なハードウェアの場合、ドライバーは SetMarkerMode 関数を実装する必要があります。

構文

PFND3DDDI_SETMARKERMODE Pfnd3dddiSetmarkermode;

HRESULT Pfnd3dddiSetmarkermode(
  HANDLE hDevice,
  D3DDDI_MARKERTYPE Type,
  UINT Flags
)
{...}

パラメーター

hDevice

ディスプレイ デバイス (グラフィックス コンテキスト) へのハンドル。

Type

ドライバーがサポートする必要があるマーカー イベントの種類を示す、 D3DDDI_MARKERTYPE 列挙の値。

Flags

ドライバーがコマンド バッファーにカスタム情報を提供する必要があるかどうかを示す UINT 値。 D3DDDI_SETMARKERMODE_CUSTOMDRIVEREVENTSに設定すると、ドライバーはカスタム イベント情報を使用してコマンド バッファーに注釈を付け、インストルメント化する必要があります。 それ以外の場合、ドライバーはコマンド バッファーに注釈を付けてはいけません。

注釈は、英語と米国のロケールのテキスト文字列の形式、または文字列テーブル内の場所に対するインデックス値の形式にすることができます。 後者のオプションの場合、ドライバーは、インデックス値が示す文字列を記述する関数も実装する必要があります。

戻り値

関数 が正常に 完了しない場合は、S_OKまたは適切なエラー結果を返します。

注釈

D3DDDIMT_PROFILEの種類によって示される、ユーザー モード ドライバーでプロファイルの種類のマーカー イベントを設定する場合は、次のガイドラインに従います。

  1. グラフィックス コマンド境界との強い相関関係を生まない軽量インストルメンテーションを使用します。
  2. ドライバーは、グラフィックス パイプラインの最後に GPU タイム スタンプをサンプリングできる必要があります。
  3. アイドル待機コマンドなど、グラフィックス パイプラインに高パフォーマンスの負荷をかけるサンプリング コマンドは使用しないでください。 プロファイル型マーカー イベントをインストルメント化するには、ドライバーでパイプラインまたはキャッシュをフラッシュする必要はありません。

要件

要件
サポートされている最小のクライアント Windows 8.1、WDDM 1.3 以降
サポートされている最小のサーバー Windows Server 2012 R2
対象プラットフォーム デスクトップ
Header d3dumddi.h (D3d10umddi.h を含む)

こちらもご覧ください

D3DDDI_MARKERTYPE

SetMarkerMode