Shaderを実際使ってみる
はじめに
今回から実際shaderを使ってみましょう!
今回使うツールはunityです。(バージョンは5.6です)
使うまでの流れ
流れとしてはまずmaterialを作ります。その後createでshader(standard surface shader)を選択してshaderスクリプトを作ります。そしたら作った2つの物を関連付けます!materialのshaderの部分をCustomにして自分が作ったshaderスクリプトを選択してください。(画像ではmaterial:test shaderスクリプト:testとなっています。)
実際のコーディング
今回は最も簡単なSurfaceShaderについて書いていきます。

1.まずはコード全体をShader "Custom/test" {SubShader {....}FallBack "Diffuse"
}で囲みます。
2.CGPROGRAMはここからshaderコードが始まりENDCGで終わるということです。
3.#pragma surface surf LambertはSurfaceShaderのメイン関数はsurfということです。
そしてLambertはライティングの方法です。ざっくりいうと視点の位置に関わらず(近似された)同じ色で見えるという方法です。
4.10〜12行目ではshaderに流れ込んでくる情報を定義します。今回は色ですね!
5.14~16行目は主役、メインです!引数のINはInput構造体で定義した流れ込んでくる変数、oは出力する構造体です。はじめはなかなかイメージがわかないと思いますが、イメージとしては流れ込んできた構造体の変数をいじって出力構造体にセットみたいな感じです!そしたら画面に変化が訪れるはず!です。今回では出力の拡散光の色を赤にセットしているのでこのmaterialをセットしたオブジェクトは赤くなるはずです。
最後に
初学者向けに書いているので少し難しいところは飛ばして書いてあるので触れてない部分に関しては少し我慢して写経してみてください。今後の記事でしっかり書いていくつもりですので心配しないでください!また間違いがあった場合もしくは質問などがあったらコメントください!