【第15回】マテリアルの魔術:Shader Graph 基礎編

Unity(デザイナー向け)

これまで、Particle System(第12〜14回)を使って、空間に「動き」を足してきました。
でも、その一つひとつの粒や、シーンに置かれた3Dモデルの「質感」そのものをもっと自由に操りたいと思ったことはありませんか?

「もっと宝石のように内側から輝かせたい」 「SF映画のようにホログラムっぽく点滅させたい」

こうした「見た目のルール」を自分で作れる機能が 『Shader Graph(シェーダーグラフ)』 です。


スポンサーリンク

「プログラム」ではなく「レシピ」だと考えよう

「シェーダー」と聞くと、難しいプログラミングコード(数学の羅列)を想像して身構えてしまうかもしれません。
でも、Shader Graphは違います。

Shader Graphは、「ノード(機能の箱)」を「ワイヤー(線)」で繋いでいく視覚的なツールです。
デザイナーの皆さんなら、「色の配合(レシピ)」を考えていると想像してみてください。

  • 「この色」と「あの画像」を混ぜる

  • 「時間」によって「明るさ」を変える これをパズル感覚で繋いでいくだけで、コードを1行も書かずに複雑な質感が作れます。


スポンサーリンク

準備:魔法の設計図を作ろう

まずは、シェーダーを作るためのファイルを用意しましょう。

  1. プロジェクトパネルで 右クリック > Create > Shader Graph > URP > Lit Shader Graph を選択します。(名前を MyFirstShader などにしましょう)

  2. できたファイルをダブルクリックすると、Shader Graphの専用ウィンドウが開きます。

中央にある大きな 「Master Stack(マスタースタック)」 が、最終的な見た目を決める出口です。
ここに色々なノードを繋いでいきます。


スポンサーリンク

実践:時間でふわふわと「点滅」させてみる

一番簡単な「魔法」として、マテリアルを時間で明滅させてみましょう。

STEP 1:時間(Time)を取り出す

グラフの空いた場所で スペースキー を押し、Time と検索して配置します。
これは、ゲームが始まってからの時間を常にカウントしてくれるノードです。

STEP 2:波(Sine)を作る

Time ノードの出力をドラッグして、Sine ノードに繋ぎます。
これで、時間は一直線ではなく 「-1から1の間をなめらかに行ったり来たりする波」 に変わります。

STEP 3:色(Color)と混ぜる

  1. Color ノードを作り、好きな色を設定します。

  2. Multiply(乗算) ノードを作り、Sine の結果と Color を繋ぎます。

  3. 最後に、その結果を Master Stackの『Base Color』または『Emission』 に繋いでください。

これで、あなたの設定した色が時間とともにフワッフワッと明るくなったり暗くなったりする「点滅シェーダー」の完成です!


スポンサーリンク

デザイナーの武器は「直感」

Shader Graphの面白いところは、左下にある 「Main Preview」 を見ながら、リアルタイムで変化を確認できることです。

「ここを繋ぎ変えたらどうなるだろう?」「この数値を上げたらもっと光るかな?」というデザイナー特有の 試行錯誤(直感的なトライ&エラー) が、そのままプログラミングの代わりになります。


スポンサーリンク

まとめ:あなたはもう「シェーダー作家」の入り口にいる

今回は、Shader Graphの基本的な考え方と、簡単な点滅の作り方を学びました。

  • Shader Graph は、ノードを繋ぐ「ビジュアルなレシピ」。

  • TimeSine を組み合わせるだけで、動き(アニメーション)が生まれる。

  • Preview を見ながら、直感的に質感を追い込める。

「プログラムは書けないけれど、見た目にはこだわりたい!」というデザイナーにとって、これほど強力な味方はありません。

次回は、このシェーダーを使って、水面や床が流れるように動く 『UVアニメーション』 に挑戦しましょう。
お楽しみに!

タイトルとURLをコピーしました