[Shader] ペインでは、トレースで使用されている個々のシェーダーを表示できます。
このペインを使用するには、リストからシェーダーを選択します。これにより、シェーダーのソースと静的分析の統計情報を表示する新しいタブが作成されます。
パイプラインの特定のステージにバインドされている特定のシェーダーを表示するには、そのステージを [Pipeline ビュー] に表示します。
![シェーダー ペイン](https://developer.android.com/static/images/games/agi/pane-shader.png?authuser=8&hl=ja)
シェーダー コードを選択
[SPIR-V] または [GLSL] を選択できます。注:
- SPIR-V コードが OpSource 命令で元の GLSL コードを提供する場合、[GLSL] タブには単に同じコードが表示されます。そうでない場合、AGI は SPIRV-Cross を使用して SPIR-V を GLSL に逆コンパイルしようとします。
- 逆コンパイルでエラーが発生した場合、GLSL ソースコードを表示するオプションは使用できません。
静的分析
AGI は、SPIR-V シェーダーの静的解析による統計情報を提供します。サポートされている統計情報は次のとおりです。
統計情報 | 説明 |
---|---|
ALU の手順 | ALU を使用するシェーダー内の命令の数。 |
テクスチャの手順 | シェーダーでのテクスチャの取得回数。 |
ブランチ手順 | シェーダー内の分岐命令の数。 |
ピーク時の一時登録圧力 | 同時にライブ状態にされる一時レジスタの最大数。一時的な値の使用期間は、その定義から始まり、シェーダーで最後に使用された時点で終了します。統計では、各ライブ値が使用するレジスタの数 p が加算されます(たとえば、4D 浮動小数点は 4 つのレジスタ)。 |