サーフェスシェーダー
照明あるいは影による影響を考慮してメッシュを描画する。Cg/HLSL で記述する。フォワードレンダリングあるいはディファードレンダリングをサポートする。サーフェスシェーダーは内部的に頂点シェーダー/フラグメントシェーダーに変換される。
ドキュメント:
サーフェスシェーダーの記述 | Unity マニュアル [公式]
書き方
ドキュメント:
ShaderLab シンタックス | Unity 2018.4 マニュアル [公式]
参考:
Surface シェーダーとフラグメントシェーダーの違いを軽くまとめてみた – Qiita
導入
ドキュメント:
サーフェイスシェーダーの例 | Unity マニュアル [公式]
参考:
基本とサーフェースシェーダー | Tsumiki Tech Times
ライティングモデル
ドキュメント:
サーフェスシェーダーでのカスタムライティングモデル | Unity マニュアル [公式]
サーフェスシェーダーライティングの例 | Unity マニュアル [公式]
放出/エミッション (Emission)
参考:
Surface Shader を利用した発光シェーダ | WonderPlanet Developers’ Blog
How to add Emission to my custom shader? – Unity Answers
デバッグ
参考:
#pragma debug | Unity Shader 入門
アウトラインを描画する
参考:
解説/コードリーディング
参考:
Unity で Standard Surface Shader の変換後のコードを追ってみた (Forward) | 凹みTips