スライムをテクスチャペイントでアルファをつけるて作る方法。ノードを駆使して数式と値、アルファチャンネル取得する。ノードの数式がけっこう複雑。。。一つ一つ分解して考える。。。

参考チュートリアル



モデリング


立方体にSSをつけて、押し出しと拡大縮小で輪郭をそれっぽく作っていく。 シェーディングはスムーズ。下絵を用意するとやりやすいかも。



UV展開


顔をテクスチャペイントで描きこむので、顔の部分だけUV展開する。前面の辺を選んでCtrl + Eで辺のサブメニューのシームをマーク。
  • Ctrl + 〇 でサブメニューが開ける
  • V 頂点
  • E 辺
  • F 面

辺を全選択してUVメニュー(U)から展開



顔と口の描画 : テクスチャペイント


ペイントする前に下地のマテリアルを作っておく。メタリック、粗さ0.12くらい。テクスチャ用に新規画像テクスチャを作成。


コンポジットの応用


ノードを意識した手順と考え方

  • 目と口だけはペイントしたテクスチャを表示させたい。
  • それ以外の場所はテクスチャを透過させてマテリアルの設定を出したい。

今のアルファを確認すると全面アルファが付いている状態。これだとマテリアルが透過で出てこないので、アルファを反転する。


画像、反転、アルファチャンネルを反転。


テクスチャペイントタブに切り替えて塗っていく。この時、一時的に粗さを上げておくと反射しなくて便利!


マテリアル① : 本体色のノード


ここからコンポジットの感覚、アルファの関係性をノードに置き換えて考える。まず下地、スライムの背景色+テクスチャの色を混ぜてベースカラーに繋ぐ。Fusionのマージと同じ感覚で使える。

  • バックは[RGB]でベタ塗り、フロントが[画像テクスチャ]で[RGBミックス]で混ぜる。
  • 上下関係もある、色1がフロント、色2がバック。
  • アルファを画像テクスチャから取得する。


マテリアル② : ラフネスのノード


次にラフネスのノードを組む。目と口は反射がいらない、つまりラフネスは常に1にしたい。それ以外の本体は任意でラフネスの値を変更できるようにしたい。

[数式]ノードと[値]ノードを追加

数式はそのまま計算をするノード(追加は足し算)、値は数値を入力できるノード。テクスチャのアルファ値と[値]ノードで入力した任意の数字を計算して、ラフネスに返す。アルファ値はアルファの座標と考えると自然かも。

目と口のアルファ、0と1の場所は固定で、0の座標に[値]で入力された数値が出力される。その数値がそのままラフネスになるイメージ。範囲制限は0~1に数字が制限される、ラフネスは0~1しかないのでチェックを入れる。


マテリアル③ : メタリックのノード


最後にメタリックのノードを組む。これも顔は常にメタリックの質感は0で、本体の質感だけ任意で入力したい。顔の数字を0にしておけば、何を入力しても0になるので、[本体 1 / 0 顔]になるように数式ノードを組む。

  • [本体 0 / 1 顔]の画像テクスチャに[-1]、[-1 / 0]になる
  • 次に[× -1]、これで[1 / 0]になる
  • このノードに[値]を入力すれば本体側は常に数字が入力されて顔は常に[0]になる
  • 範囲制限にチェックを入れておく

数字の流れを画像にまとめるとこんな感じ。


これでメタリックの質感も任意で決めれる。数式ノードの使い方はかなり理解できた。任意入力した時に0だと影響が無いので数式でコントロールしてるだけ。

 [ アルファ = 0 ]
 [ 描画 = 1 ]

これを数字として取得できることを覚えたので、ノードの考え方も理解が深まった。

ノードでコントロールしている様子