本日、渋谷で行われました「【Unity道場11】Shader Forge 101 〜ShaderForgeをつかって学ぶシェーダー入門〜 基本操作とよく使われるノード編」に参加をしてきました。 【Unity道場11】Shader Forge 101 〜ShaderForgeをつかって学ぶシェーダー入門〜 基本操作とよく使われるノード編 - dots. [ドッツ]
ShaderForgeをつかって学ぶシェーダー入門
ShaderForgeは触ったことはあるけどイマイチどのように使うかが良くわからなかった、また個人的にデレマスのようなToonShaderを作りたいと思っていることもあり、今回参加をしました。 場所は、渋谷のdotsというイベントスペースで、かなりオシャレな空間でした。
講師
今回のshaderForgeシリーズの講演者は@nyaa_toranekoさん。 Uniteでも講演をされていました。
Uniteの時は話が難しすぎて、概念的なことしか理解できなかったのです。
ShaderForge
Shaderをスクリプトで直に作成することができるのですが、今回は「ShaderForge」と呼ばれるUnityAssetを使って勉強をしていきます。 専用のエディタにノードと呼ばれる色々なパラメータを配置してShaderを作っていくことができるツールです。 小林さんも話されていましたが、トライアンドエラー、かつリアルタイムにどのようなShaderなのか確認ができるので学習するにはとても良いツールになります。
ちょうど40%OFFセールをしているので、54$で購入できます。 なお、Unity最新版V5.4.0では上手く動作しないので、V5.3.6での利用をおすすめします。
シェーダーを学んでみよう
シェーダーとは「 GPUで処理される、画像処理の手順を示したスクリプト」のことである。 シェーダーの種類は4つ。
- サーフェースシェーダー
- バーテックスシェーダー
- フラグメントシェーダー
- コンピュートシェーダー
ShaderForgeはサーフェースシェーダーをノードベースで作成できるように作られたエディタのこと。 バーテックス、フラグメント、コンピュートシェーダーは複雑ことができる。特にコンピュートシェーダーは直接GPUを叩くことができる。
3DCGで「マテリアル」「ライト」「カメラ」の3つが質感に影響される。 シェーダーはその中で「マテリアル」を作成するときに必要。 シェーダーを使った絵作りを学ぶためには、これらの要素を切り分けて理解することが大事。 ShaderForgeは「シェーダーの機能面の作成」
Shaderについて
Shaderは色々とめんどくさい。 決まり事があるので、それを覚えなければならない。 同じようなことを繰り返し書くことが多いので、読みにくい。
ただノードのバリエーションが少なく、1度覚えると他ゲームエンジンなどのシェーダーが何となくわかるようになる。
実際にShaderForgeを使ってシェーダーを作る
ShaderForgeで作成されたシェーダーは必ずしもモバイル向けではない。 デザイナーがシェーダーを勉強するとっかかりとしてはよい。 海外ではデザイナーの方でシェーダーをいじっている人が多くなっている。
簡単な操作方法
- ノードの削除:fn + Del (Mac)
- ノードの作成:画面でノード名の頭文字が出ると、該当のノードが表示される
- 線の削除 : alt + 右クリック
add、multiply ノード
addは加算、multiplyは乗算。 その名前の通り、パラメータに対象数値が計算される。 色の場合加算は明るくなり、乗算は暗くなる。これは輝度が関わってくる。
Lerp,Blend
テクスチャを重ねあわせる際にLerp,Blendを使う。 Lerpは割合を指定して混ぜ合わせる。 BlendはPhotoshopのレイアーのように合成ができる。
One Minus
反転は[One Minus]を使う。何かと便利。
Animation
シェーダーでアニメーションを実装する場合は、Time、Rotator、Pannerを使うと実装できる。
環境ブレンディング
上下関係のあるテスクチャの合成。コケや雪などに利用できそう。
最後に
最後の部分はメモがなかったので詳しく書いていませんが、後に今回の資料とshaderのAssetが公開されています。 こちらを参考にしていただいた方が良いです。
Unity道場11 Shader Forge 101 ~ShaderForgeをつかって学ぶシェーダー入門~ 基本操作とよく使われるノード編 https://t.co/ZNJ3YR6vV4 #Unity道場 #unity3d #shaderforge
— 小林信行 N.Kobayashi (@nyaa_toraneko) 2016年8月28日
ハンズオン的に実際に触りながら色々試すことができたので、勉強になりました。 次回は1ヶ月後に「カスタムライティングを自分で設定する方法」という題目で行われる予定で、最終的に、トゥーンシェーダーを作れるということで、絶対に参加をしたいと思いました。 今回勉強したことを忘れないようにしなくては。
【続きの記事】
Unity 5.x Shaders and Effects Cookbook Alan Zucconi,Kenneth Lammers Packt Publishing Amazonで詳しく見る |