ID3D12Debug5::SetEnableAutoName-Methode (d3d12sdklayers.h)
Konfiguriert die automatische Benennung von Objekten.
Syntax
void SetEnableAutoName(
BOOL Enable
);
Parameter
Enable
Typ: BOOL
true
, um die automatische Benennung zu aktivieren; false
, um die automatische Benennung zu deaktivieren.
Rückgabewert
Keine
Bemerkungen
Standardmäßig werden Objekte nur benannt, wenn Sie ID3D12Object::SetName oder ID3D12Object::SetPrivateData verwenden, um einen Namen zuzuweisen.
Es empfiehlt sich, alle Direct3D 12-Objekte zu benennen. zumindest in Debugbuilds. Andernfalls empfiehlt es sich, die automatische Namenszuweisung zuzulassen, um die Lücken zu schließen. Direct3D 12-Objekte, die mit aktiviertem automatischen Namen erstellt wurden, erhalten automatisch einen Namen, der für die Ausgabe der Debugebene und für DRED-Seitenfehlerdaten verwendet wird.
Um keine Abhängigkeit von einem bestimmten Format für die automatische Benennung zu erstellen, können Sie die Autonamenzeichenfolgen nicht mithilfe von ID3D12Object::GetName oder ID3D12Object::GetPrivateData abrufen. Um jedoch eine eindeutige Namenszeichenfolge zu generieren, verwendet Direct3D 12 den lokal eindeutigen Bezeichner (LUID), der jedem ID3D12DeviceChild-Objekt zur Erstellung zugewiesen ist. Sie können diese LUID mithilfe von ID3D12Object::GetPrivateData mit dem REFGUID-WertWKPDID_D3D12UniqueObjectId abrufen. Möglicherweise finden Sie dies für Ihre eigenen Objektbenennungsschemas nützlich.
Beim Debuggen vorhandener Software können Sie die automatische Benennung mithilfe des Grafiktools-Hilfsprogramms D3DConfig und des Befehls d3dconfig.exe device auto-debug-name=forced-on
steuern.
Jedes Objekt, das mithilfe von ID3D12Object::SetName oder ID3D12Object::SetPrivateData einen Namen erhält, verwendet den zugewiesenen Namen anstelle des automatischen Namens.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 10 Build 20348 |
Unterstützte Mindestversion (Server) | Windows 10 Build 20348 |
Zielplattform | Windows |
Kopfzeile | d3d12sdklayers.h |