はなちるのマイノート

Unityをメインとした技術ブログ。自分らしくまったりやっていきたいと思いますー!

【Unity】ShaderGraphのUVノードについて

はじめに

今回はShaderGraphのUVノードについての記事になります!

f:id:hanaaaaaachiru:20191125204023p:plain

このUVノードは本当に基本的なノードですが、とても重要なものなので覚えておくと良いと思います。

各ポート

名前 入出力 タイプ 意味
Out 出力 Vector 4 UV座標

実際に入っている値はこんな感じ.

f:id:hanaaaaaachiru:20191125223333p:plain

ただ一応出力は4次元ベクトルということで、一,二番目の要素は先程の通りですが、調べたところ三番目の要素は0、4番目の要素は1が入っていました。

f:id:hanaaaaaachiru:20191125224228p:plain

f:id:hanaaaaaachiru:20191125224251p:plain

色の配色の仕方

結構このUVの色の付け方について疑問に思う方も多いのではないでしょうか。

f:id:hanaaaaaachiru:20191125224429p:plain

これは(x,y,z)というベクトル値を(R,G,B)という色で表現しています。

f:id:hanaaaaaachiru:20191125224816p:plain

実はUnityのギズモ(シーンビューにある奴)もこれと同じになってるんです。

f:id:hanaaaaaachiru:20191125224943p:plain

ただ難しいのがR,G,Bは全て0~1までしか表現できないというところです。

なので一見同じ黒に見えても、(x,y,z) = (0,0,0)かもしれないし(x,y,z) = (-1000,0,0)かもしれないというわけですね。

また今回紹介したUVノードはベクトルの3つ目の要素zは常に0なので、x,y,つまりはR,G赤と緑,そしてそれを混ぜた黄色によって表現されてます。

以下の画像のようなノードを組んで、z座標を変化させてみるとまた面白いかもしれません。

f:id:hanaaaaaachiru:20191125225718p:plain

さいごに

一見シンプルに思えて結構奥深かったように私は感じました。

またUVノードにチャンネルという項目があったのでうが、いまいち使い方が分からなかったので知っている方がいれば是非コメント等で教えてくれると嬉しいです!