OptimizedShaderGenerator クラス
May 12, 2025 · View on GitHub
UberUnlit/Litシェーダーからシェーダーキーワード、パスを必要最小限にした、最適化されたシェーダーを生成するクラスです。
生成されるシェーダーは以下の組み合わせで作成されます。
- レンダリングタイプ (Opaque、Transparent、Cutout)
- オプショナルパス (DepthOnly、DepthNormals、ShadowCaster)
生成されたシェーダーはOptimizedShaderReplacerクラスを利用することでUberUnlit/UberLitを利用しているマテリアルのシェーダーを作成した最適化シェーダーに差し替えることができます。
具体的な使用方法については、Assets/Samples/Editor/ShaderOptimizeSample.csのサンプルコードをご参照ください。
このサンプルでは、OptimizedShaderGeneratorとOptimizedShaderReplacerを組み合わせた実装例を確認できます。
APIs
Generate
概要
UberLitとUberUnlitシェーダーを最適化し、指定された出力フォルダに保存します。
引数
| パラメータ | 説明 |
|---|---|
| outputFolderPath | 最適化されたシェーダーを出力するフォルダのパス |
サンプルコード
// 最適化されたシェーダーを指定したフォルダに出力する
OptimizedShaderGenerator.Generate("Assets/OptimizedShaders");