はじめてのShader・Shader Graph 解説6 ノイズを使いこなせ!
[Unity] Shader Graph でノイズ関数を改造してタイリングに対応するカスタムノードを作る - Qiita 追記:本記事の改良版 [Unity] Shader Graph でノイズ関数を改造してタイリングに対応するカスタムノードを作る(改) を投稿しました。コードの修正があるので、冒頭のカ.
ノイズの作り方2:動画編集ソフトなどでノイズテクスチャを作るまた、エフェクト制作人口が少ない要因の1つだと思いますが、ノイズテクスチャ含め、エフェクト用のテクスチャを作るには、基本的に高額なツール(Photoshop、After Effect、Substance Designerなど)を使用しないと作るのが難しいことがほとんどです。
ですが、このEffect Texture Makerで作成出来るノイズであれば、先ほど紹介したUnityデフォルトで搭載されているノイズで事足りることもあり、個人的にはあまり使用していません。
当Blogは、もっとカジュアルにゲームを作る人を対象としているので、高額ソフトに頼らず、無料で使えちまうUnity標準搭載ノイズを使うことを前提としたシェーダーの作成方法について解説していきます。
頻出!ノイズを絡めたShader Graphの表現
1.ノイズに色を乗せる2色でグラデーションさせる場合は Lerp というノードを使います。こちらはAとBの入力を滑らかに補間してくれるノードです。
2.ノイズをスクロールする 3.ノイズの境目をパッキリと塗り分けるノイズは、一様に0~1に広がっていますが、アニメ調の表現をしたい場合などは、色の違いをはっきりと分けたいことがあります。そうした時に、ノイズの出力に Step ノードをつなぐことで、境目がくっきりとしてアニメ調な表現になります。
4.ノイズを引き伸ばす例えば、縦長のノイズを作るには、ノイズのUVをタテに引き伸ばします。 Tiling And Offset ノードのTilingの値を伸ばしてみます。
すると、こんな感じの闇のオーラっぽいものが作れます。また、 Power ノードは後述しますが、ノイズのコントラスト(明暗差)を強くするためのノードです。数式的にはn乗する処理です。Shaderでは、値を乗算すると暗く、加算すると明るくなるものでした。(詳しくはこちらの記事で)B=2の場合、値を二乗しているので、暗い箇所がより暗くなっている、というわけです。
5.ノイズ線(直線)UV > Split のRをNoiseのUVに接続するだけです。Rを接続すると、タテの線になります。
6.ノイズ線(集中線)先程のノイズを、中心から広がるような線にしてみます。先ほどつないでいた UV ノードを PolarCordinates に変更するだけです。
PolarCordinates というのは日本語では、極座標といいます。UVは通常左から右に掛けて0~1と増えていきますが、 PolarCordinates を挟むと、中心から外側に掛けて0~1に広がっていく見た目を作れます。
また、 PolarCordinates のRを接続するとエモい感じの同心円が作れます。
7.ノイズにマスクを掛ける 8.ノイズを使ってディゾルブさせるノイズに Step ノードを接続すると、0か1かをパッキリと分けることが出来るんでした。これを使って、0の範囲を増やしていくことで、徐々にテクスチャを消していく、ディゾルブの表現が可能になります。
9.Powerノードでノイズのコントラストを上げるですが、コントラストを強めにすることで、実用的な見た目のノイズになります。 Tiling And Offset で若干タテに引き伸ばして Voronoi Noise をつなげ、 Power ノードで明暗差を付けてみました。
Power ノードは便利ですが1つ注意が必要です。 Power ノードをつなぐ前の値には、マイナスの値が含まれないようにする必要があります。
たとえば、ノイズに0.5を減算し、部分的にマイナス値を含んだ状態で Power ノードに接続してみます。
このように、値がマイナスになっている箇所だけがエラーとなります。エラーはピンクで表示されます。ちなみに、ビルトインのシェーダーをURPに持ってくると真っピンクになるのは、シェーダーエラーになっているからです。
これを防ぐには、 Power ノードの前に Saturate ノードをつないでください。 Saturate は、値を0~1の間に調整してくれるノードです。 Saturate ノードをつなぐと、エラー部のピンク箇所が消えました!
まとめ
【Unity】120以上のエフェクトがすぐに使える!Unityスターターキット Easy Custom VFX/UI Vol.1 - Yu-Rin-. ☆☆☆☆2024/10/10追記 第16回ユニティ・アワード Best Artistic Toolに、本アセットがノミネートされました. ☆☆☆☆ 多くのゲームで使用出来る、汎用的な画像加工演出・ポスト.
関連 よかったらシェアしてね! URLをコピーしました! URLをコピーしました!- Easy Custom VFX/UI、Easy Custom VFX 3D値上げのお知らせ
- 【Unity】DoTween Pro版と無料版の違いを徹底解説!
この記事を書いた人
ゲーム制作の敷居を下げ、もっと多くの人にゲーム作りを楽しんでもらうために、ゲームをカンタンに作る方法を”網羅的に”解説しています。 よかったらブックマークお願いします。 Twitter(X)もよければフォローお願いします。
関連記事
VRゲーム作ってみたら想像の100倍カンタンだった件 2025年12月9日 ビルド容量からTextMeshProの容量を減らす対策! 2025年9月10日 Unity1week共有会 スライド 2025年8月30日 【Unityでソシャゲを作ろう2】厄介だけど必要!運用に耐えられるセキュリティの高い通信を行おう! 2025年7月31日 【Unityでソシャゲを作ろう】運用型ライブゲームを作るために知っておくべきネットワーク基礎知識 2025年7月14日 プロジェクトを使いまわせ!いつも使うアセットをインストール済み状態でプロジェクトを開始する方法 2025年6月23日 ゲーム制作初心者の過去の自分に教えたかった情報 2025年5月27日 Odin使いこなしチートシート 2025年5月18日コメント
コメント一覧 (1件) コメントする コメントをキャンセル エフェクトのサムネイル表示・インスペクタ内再生ツール 【120以上の素材集】シェーダー・エフェクトスターターキット Unityのフォント追加方法・TextMeshProを日本語で使う方法 Unityでマスクを使って画像を切り取る方法!マスクを使った演出方法も紹介! UnityのText(レガシー)とTextMeshProの違い【初心者向け解説】 【Unity】わかり易さ特化!はじめてのShader・Shader Graph 解説 1 【Unityボタン完全攻略】ボタンの設計方法を解説!標準にない長押し判定のサンプルあり 完全無料・著作権フリーのUI素材集 ゆーりんち(Yu-Rin-Chi)合同会社Y.G.Tクリエイト代表。 ゲームエンジニアもどき。自作好き。 アセット・ライブラリ制作、Webアプリ開発、バナー制作、動画編集などなど色々やっています。 パソコンに詳しくない人でもゲームが作れるように分かりやすい記事を心がけています。