[Unity] ShaderForgeを触ってみる

オブジェクトをゲームとして動かせるようにするのも良いですが、やっぱり絵の見た目にかかわるものを作りたいので、買ったまま放置していたShaderForgeを触ってみることにしました。

まず、新しく作成したプロジェクトに、AssetsストアからShaderForgeをインポートします。
インポートすると、Windowの中にShaderForgeが追加されるので、そこからWindowを表示します。

UnityEditorの存在を知る前は、ShaderForgeとかはどういう扱いなのだろうと思ってたのですが
覚えてからはUnityEditorの拡張ってことだったとを理解しました。

起動したら、まず NewShaderでシェーダーを作成。
作成したファイルは、普通のシェーダーと同じく .shader という名前になります。

試してないですが、ShaderForgeで作成したシェーダーは
ライセンス買っていないユーザーアカウントでも開けるんでしょうかね?

作成するシェーダーのタイプがでてくるので、まずはシンプルなLit(Basic)を選択。

PostEffectもShaderForgeで作れるのはありがたいです。

最初はColorが刺さっただけの状態になっています。

ColorやTextureのようなノードを使用すると、インスペクタ上からファイルをアタッチしたり
色を変更できるようになります。

(クリックで再生)

各種ノードは、ノードの頭文字のキーを押すと作成ショートカットを出すことができます。
MultとかLightDirectionとかDotとか、よく使うものを毎度探して入れるのは面倒だよなぁと思ってましたが
その辺はさすがによく考えられていますね。

(クリックで再生)

切断はAlt+右クリックでせつぞくの上をドラッグ。

ノードタイプとかもほぼほぼわかりやすい名前なので、思いのほかサクサクできるのが良いですね。

なにより良いのが、ノードで作ったのがすべてコードとして出力されること。
Lit(Base)で作成すると、LambertのDiffuseColorとかその辺がもう自動でできていて
テクスチャカラーの計算とかもコードとして書かれているので、言語を覚える勉強にもなります。

ノードベース苦手だからいやだなぁとか思ってましたが、嘘ですごめんなさい。
ノードベース最高です。

作成したシェーダーは、MaterialのShaderから選択すればOKです。

想像以上に導入が簡単だったので、以前Cgシェーダーで頑張って書いた基本的なNormalMap・CubeMap
掛け算足し算ぐらいなら余裕っぽいので、Unityで作り直してみようと思います(`・ω・´)

あとはポストエフェクトとか、もっと深い内容にまで行くと未知の領域なので
いろいろと資料を探しつつしばらくは自宅課題として遊んでみようと思います。
回転の値取得で頭悩ませるより、シェーダーのほうがずっと楽しい…(切実

コメントを残す

メールアドレスが公開されることはありません。

*