次の方法で共有


ID3D11ShaderTrace::TraceReady メソッド (d3d11shadertracing.h)

シェーダー トレースが記録され、使用できる状態であることを指定します。

構文

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

パラメーター

[out, optional] pTestCount

トレースの一致する呼び出しが発生した回数を受け取る変数への省略可能なポインター。 使用しない場合は、NULL に設定します。 この番号の詳細については、「備考」を参照してください。

戻り値

TraceReady は次 を返します。

  • トレースの準備ができているかどうかをS_OKします。
  • トレースの準備ができていない場合は、S_FALSEします。
  • トレース の記録処理中にメモリが不足した場合にE_OUTOFMEMORYします。 ID3D11ShaderTrace::ResetTrace を呼び出して再描画することで、トレースを記録し直すことができます。 トレースを再度記録しない場合は、 ID3D11ShaderTrace インターフェイスを解放します。
  • Direct3D 11 リターン コードで説明されているその他のエラー コードの可能性があります。

注釈

トレースが呼び出し 3 を記録することを意図しているが、これまでに発生した呼び出しが 2 つだけの場合、 TraceReadypTestCount が指す変数を 2 に設定します。 この値を使用すると、トレースの準備がまだできていない理由を理解できます。 逆に、 pTestCount が指す変数は、準備ができているトレースの要求された呼び出し数よりも大きくなる可能性があります。 この値を使用して、必要なトレース呼び出し数を超えて実行された呼び出しの数を確認できます。 たとえば、描画呼び出しで特定のシェーダーのピクセルで発生するオーバードローの数がわからない場合があります。 シーンを同じように再描画できる場合は、 TraceReady が最初のパスの pTestCount で返した値に基づいて、次回トレースを設定できます。

シェーダー トレースが記録されている場合は、 ID3D11ShaderTrace::GetTraceStatsID3D11ShaderTrace::GetInitialRegisterContentsおよび ID3D11ShaderTrace::GetStep メソッドを正常に呼び出すことができます。 シェーダー トレースが記録されているかどうかに関係なく、 ID3D11ShaderTrace::ResetTrace メソッドと ID3D11ShaderTrace::P SSelectStamp メソッドを呼び出すことができます。

メモこの API には、Windows 8用の Windows ソフトウェア開発キット (SDK) が必要です。
 

要件

要件
サポートされている最小のクライアント Windows 8 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー d3d11shadertracing.h
[DLL] D3D11SDKLayers.dll;D3D11_1SDKLayers.dll;D3D11_2SDKLayers.dll

こちらもご覧ください

ID3D11ShaderTrace