ID3D12Debug5::SetEnableAutoName メソッド (d3d12sdklayers.h)
オブジェクトの自動名前付けを構成します。
構文
void SetEnableAutoName(
BOOL Enable
);
パラメーター
Enable
種類: BOOL
true
自動名前付けを有効にする場合。 false
自動名前付けを無効にする場合は 。
戻り値
なし
解説
既定では、ID3D12Object::SetName または ID3D12Object::SetPrivateData を使用して名前を割り当てない限り、オブジェクトの名前は付けられません。
少なくともデバッグ ビルドでは、すべてのDirect3D 12 オブジェクトに名前を付けるのがベスト プラクティスです。 失敗すると、ギャップをカバーするために名前の自動割り当てを許可すると便利な場合があります。 自動名前を有効にして作成されたオブジェクトDirect3D 12、自動的に名前が割り当てられます。これは、デバッグ レイヤーの出力と DRED ページフォールト データに使用されます。
そのため、特定の自動名前付け形式に依存しないように、ID3D12Object::GetName または ID3D12Object ::GetPrivateData を使用して自動名前文字列を取得することはできません。 ただし、一意の名前文字列を生成するために、Direct3D 12は作成時にすべての ID3D12DeviceChild オブジェクトに割り当てられたローカル一意識別子 (LUID) を使用します。 その LUID は、 ID3D12Object::GetPrivateData を使用して REFGUID 値 をWKPDID_D3D12UniqueObjectIdして取得できます。 これは、独自のオブジェクト名付けスキーマに役立つ場合があります。
既存のソフトウェアをデバッグする場合は、 D3DConfig グラフィックス ツール ユーティリティと コマンド d3dconfig.exe device auto-debug-name=forced-on
を使用して、自動名前付けを制御できます。
ID3D12Object::SetName または ID3D12Object::SetPrivateData を使用して名前を指定すると、自動名の代わりに割り当てられた名前が使用されます。
要件
サポートされている最小のクライアント | Windows 10 ビルド 20348 |
サポートされている最小のサーバー | Windows 10 ビルド 20348 |
対象プラットフォーム | Windows |
ヘッダー | d3d12sdklayers.h |