# RenderDoc の統合

> Use the RenderDoc debugger to debug graphics on a frame by frame basis.

エディターは、フレームの詳細なイントロスペクションとデバッグを行う [RenderDoc](https://github.com/baldurk/renderdoc) グラフィックスデバッガーの起動とキャプチャの統合をサポートしています。

統合は RenderDoc 0.26 版以降で可能です。現在、インストールされているものがそれより古い場合は、少なくとも 0.26 版に更新する必要があります。

**注意**統合はエディターでのみ可能ですが、RenderDoc は、通常通りスタンドアロンのプレイヤービルドで追加設定なしで使用できます。

**注意**フレームは、RenderDoc がサポートするプラットフォームと API で Unity が実行されている場合にのみキャプチャできます。別の API が使用されている場合、サポートされている API が有効になるまで RenderDoc の統合は一時的に無効になります。サポートされているプラットフォームと API の詳細は、[RenderDoc のドキュメント](https://renderdoc.org/docs/getting_started/features.html#) を参照してください。

## RenderDoc の読み込み

RenderDoc のインストールが検出されると、エディターのロード後いつでも、[Game View](/engine/6000.0/manual/unity-editor/using-the-editor/game-view.md) または [Scene View](/engine/6000.0/manual/unity-editor/using-the-editor/using-the-scene-view.md) タブを右クリックして、 'Load RenderDoc' オプションをクリックできるようになります。クリックするとグラフィックスデバイスがリロードされるため、変更を保存しておく必要があります。ただし、その後は RenderDoc はエディターを再起動したり、スタンドアロンプレイヤーをビルドしたりすることなく、すぐにキャプチャできるようになります。

**注意**通常通り RenderDoc からエディターを立ち上げることもできます。また、コマンドラインのオプション -load-renderdoc を使って起動時に RenderDoc をロードすることもできます。

## RenderDoc を使ったフレームのキャプチャー

RenderDoc をエディターに読み込んだ際に互換性がある場合は、Game と Scene ビューのツールバーの右側に新しいボタンが表示されます。


**RenderDoc を使ったフレームのキャプチャー:**
![](/api/media?file=/engine/6000.0/media/images/RenderDocCaptureButton.png)

このボタンを押すと、次にビューに描画されるフレームのキャプチャがトリガーされます。RenderDoc ツールの UI を開いていない場合は、キャプチャを表示するために新しいインスタンスが起動し、すでに実行している場合は最新のキャプチャが自動的にそこに表示されます。そこからキャプチャを開き、ツールを使用してデバッグできます。


**RenderDoc のフレームキャプチャリスト:**
![](/api/media?file=/engine/6000.0/media/images/RenderDocCaptureList.jpg)

## シェーダーデバッグ情報を含む方法

デフォルトでは DirectX11 シェーダーのサイズを最適化するために、デバッグ情報には情報が欠けています。つまり、定数とリソースに名前がなく、シェーダーソースが利用できません。シェーダーに上記のデバッグ情報を追加するには、**# pragma enable\_d3d11\_debug\_symbols** をシェーダーの CGPROGRAM ブロックに入れてください。

## 他のグラフィックスデバッグテクニック

D3D11 を使用してスタンドアロンプレイヤーをビルドする場合、[Visual Studio グラフィックスデバッガー](/engine/6000.0/manual/materials-and-shaders/shaders/shader-troubleshooting/shader-debugging/sl-debugging-d3d11shaders-with-vs.md) でフレームをキャプチャーしてデバッグできます。
