[UnrealEngine]マテリアルノードメモ その1

Material

■[UnrealEngine]マテリアルノードメモ その1

・UnrealEngineで、個人的によく使うマテリアルノードのうち、基礎部分でよく使うもののメモを記載していこうと思います。

■四則演算

■四則演算
 ・まず最初に四則演算をおさらい。
  Add = 加算(足し算)
  Subtract = 減算(引き算)
  Multiply = 乗算(掛け算)
  Divide = 除算(割り算)

 公式ドキュメント「アーティストおよびデザイナー向けのパフォーマンス ガイドライン」の中で、Add・Sub・Mulは処理負荷が軽く、Divは処理負荷が高いと記載されています。
 そのため、小数点のMulで代用できる場合は積極的に代用し、Divはなるべく使わないほうが無難と思われます。
 例) /2 の代わりに *0.5

■ComponentMask

 ・[ComponentMask] は 入力した値の内、R・G・B・Aから任意のチャンネルを抜き出します。
  図のように[TexCoord]からRやGだけを使ったり、法線テクスチャからRGのみ抽出する時などに使います。

■1-x

 ・[1-x]は 入力した値を 1から引いた値に変換します。
  0-1のテクスチャを渡すと、白黒反転のような形になります。

■Power

 [Power]は Baseに入力した値を Exp(指数)で累乗します。
 0~1の白黒テクスチャを、尖らせたり膨らませたりに使います。
※公式ドキュメント「アーティストおよびデザイナー向けのパフォーマンス ガイドライン」の中で「負荷:高」とされているノードの一つであり、使いすぎには注意が必要です。
(でも便利なので結構つかってしまいがち)

■ConstantBiasScale

 ・[ConstantBiasScale]は、入力値に加算と乗算を行います。
  Bias = 加算 Scale = 乗算。
  よく使う用法としては、Bias = -0.5 Scale = 2 として
  0~1 の値を -1~+1 に広げる時に使います。

■Abs

 ・[Abs]はマイナスの値をプラスに変換します。
  前述の[ConstantBiasScale]と併せて、
  主に -1~+1 の値を 1~0~1 に変換する時に使います。

■Frac

 [Frac]は 入力した値を[0~1]の間で繰り返す形に変換します。

■Saturate

 [Saturate]は、入力した値を[0~1]の範囲で間引きます。
 [Clamp]で Min = 0 / Max = 1 とした時と同じ効果で、よりコンパクトです。

■Floor / Ceil

 [Floor]は、入力した値の小数点を 切り捨てする形に
 [Ceil]は、入力した値の小数点を 繰り上げする形に
 それぞれ変換します。

■Sine/Cosine

 入力値を正弦波/余弦波に変換します。
 基本的にほぼ同じ形状の波ですが、0~1を入力した際
 [Sine] は 0 から始まり、[Cosine] は 1 から始まる形になります。
※[Sine][Cosine]もまた、「アーティスト向けガイドライン」の中で高負荷とされているノードのため、多様しすぎないよう注意が必要と思われます。

 ひとまず以上となります。
 UnrealEngineには非常に多くのマテリアルノードが用意されており、未だに知らないノードも多くあります。
 今後も勉強がてら、順次記事にしていきたいと思います。

コメント

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