ID3D11ShaderTrace::TraceReady-Methode (d3d11shadertracing.h)

Gibt an, dass die Shaderablaufverfolgung aufgezeichnet und einsatzbereit ist.

Syntax

HRESULT TraceReady(
  [out, optional] UINT64 *pTestCount
);

Parameter

[out, optional] pTestCount

Ein optionaler Zeiger auf eine Variable, die die Häufigkeit empfängt, mit der ein übereinstimmende Aufruf für die Ablaufverfolgung aufgetreten ist. Wenn nicht verwendet, legen Sie auf NULL fest. Weitere Informationen zu dieser Nummer finden Sie unter Hinweise.

Rückgabewert

TraceReady gibt Folgendes zurück:

  • S_OK , wenn die Ablaufverfolgung bereit ist.
  • S_FALSE , wenn die Ablaufverfolgung nicht bereit ist.
  • E_OUTOFMEMORY , wenn der Arbeitsspeicher während der Aufzeichnung der Ablaufverfolgung nicht mehr vorhanden war. Sie können versuchen, die Ablaufverfolgung erneut aufzuzeichnen, indem Sie ID3D11ShaderTrace::ResetTrace aufrufen und dann neu zeichnen. Wenn Sie die Ablaufverfolgung nicht erneut aufzeichnen möchten, lassen Sie die ID3D11ShaderTrace-Schnittstelle los.
  • Möglicherweise andere Fehlercodes, die in Direct3D 11-Rückgabecodes beschrieben werden.

Hinweise

Wenn eine Ablaufverfolgung den Aufruf 3 aufzeichnen soll, aber bisher nur zwei Aufrufe stattgefunden haben, legt TraceReady die Variable fest, auf die pTestCount auf 2 verweist. Sie können diesen Wert verwenden, um zu verstehen, warum eine Ablaufverfolgung noch nicht bereit ist. Umgekehrt kann die Variable, für die pTestCount-Punkte größer als die angeforderte Aufrufanzahl für eine ablaufbereite Ablaufverfolgung sein. Sie können diesen Wert verwenden, um die Anzahl der Aufrufe zu bestimmen, die über die erforderliche Anzahl von Ablaufverfolgungsaufrufen hinaus ausgeführt wurden. Beispielsweise kennen Sie möglicherweise nicht die Anzahl von Überziehungen, die für einen bestimmten Shader in einem Zeichnungsaufruf auf einem Pixel auftreten. Wenn Sie die Szene identisch neu zeichnen können, können Sie die Ablaufverfolgungen beim nächsten Mal basierend auf dem Wert einrichten, den TraceReady beim ersten Durchlauf bei pTestCount zurückgegeben hat.

Wenn die Shaderablaufverfolgung aufgezeichnet wurde, können Sie erfolgreich die Methoden ID3D11ShaderTrace::GetTraceStats, ID3D11ShaderTrace::GetInitialRegisterContents und ID3D11ShaderTrace::GetStep aufrufen. Sie können die Methoden ID3D11ShaderTrace::ResetTrace und ID3D11ShaderTrace::P SSelectStamp aufrufen, unabhängig davon, ob die Shaderablaufverfolgung aufgezeichnet wurde.

Hinweis Für diese API ist das Windows Software Development Kit (SDK) für Windows 8 erforderlich.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile d3d11shadertracing.h
DLL D3D11SDKLayers.dll; D3D11_1SDKLayers.dll; D3D11_2SDKLayers.dll

Weitere Informationen

ID3D11ShaderTrace