【TexGraph】プロシージャルテクスチャの門を叩く その2
TexGraphを使ってレンガのテクスチャを作る試みの第二回。
前回はこちら
シェイプでパターンを作るところまで行ったので、今回はそのパターンに色をつけるところまで進める。
前回のおさらい
ツール導入後、四角形のシェイプを、Tilingノードを使ってパターン化するところまで行った。
これに色を付けるが、手順は以下の通り。
- マス目に色をつける(グレースケール)。
- ベースの色をつける(カラー)。
- 違う色を作って混ぜる(パラメータでランダム化する)。
Graphでいうと以下の箇所になる。
1.マス目に色をつける
まず【Tiling】ノードには以下の特徴がある。
【Output】側の出力は通常の出力だが、
【Code】側の出力だと以下のようにグレーの荒いマス目で塗られた出力になる。
これを利用する。
Multiplyで合成
【Graph】ウィンドウで右クリック>Operations>Multiply
で、【Multipy】ノードを追加し、【Output】と【Code】を以下のように繋げる。
MultiplyとはPhotoshopで言うところの『合成モード乗算』と同じだ。
Photoshopで同じことをするとこうなる。
ただ、これだと色がちょっと暗すぎるので明度を調整する。
Mix Colorで明度調整
【Graph】ウィンドウで右クリック>Operations>Mix Color
で追加した【Mix Color】ノードを以下のように接続する。
【Mix Color】の【Properties Panel】を見ると、以下のようなプロパティがあるが、それぞれ次のような意味がある。
Begin Color:黒(0,0,0)に色をつける
End Color:白(1,1,1)に色をつける
Photoshopのグラデーションマップに近い。
今回はちょっと明度を上げたいので、プロパティを以下のようにする。
Begin Color:R192、G192、B192
2.ベースの色をつける
ベースカラーをつけるが、ここでも【Mix Color】を使用する。
Begin Color:R230、G218、B200
End Color:R203、G149、B83
結果、以下のようなテクスチャになる。
これでベースカラーの着色は終わりだ。
3.違う色を作って混ぜる
アレンジカラーの作成
ベースの色に違う色を合成するために、まずは違う色パターンを作成する。
【Tiling】の【Code】から線を伸ばして、新しく作成する【Mix Color】に接続する。
【Mix Color】のプロパティは以下の通り。ここは自由でかまわない。
Begin Color:R70、G23、B0
End Color:R248、G99、B51
アルファチャンネルテクスチャの作成
次に、ベースカラーとアレンジカラーを合成する際に使用するアルファチャンネル用テクスチャを作成する。
アルファチャンネルは、ベースカラーのモルタル部分の線を残すために一工夫必要になる。
以下の2つのノードを追加する。
【Graph】ウィンドウで右クリック>Operations>OneMinus
【Graph】ウィンドウで右クリック>Operations>Max
それぞれ以下のように接続する。
【Tiling】【Code】->【Max】【InputB】
【Tiling】【Output】->【OneMinus】->【Max】【InputA】
【OneMinus】は、Photoshopで言うところの『階調反転』。
【Max】は、Photoshopで言うところの『合成モード覆い焼き(リニア)-加算』だ。
これで『ベースカラー』『アレンジカラー』『アルファチャンネル』が揃ったので、この3つを合成する。
合成
【Graph】ウィンドウで右クリック>Operations>Blend
追加した【Blend】ノードには3つの差込口があるので、以下のように繋げる。
【ベースカラー】->【InputA】
【アレンジカラー】->【InputB】
【アルファチャンネル】->【mask 】
これでマス目にランダムな色をつけられたのだが、このままではパラメータによる変更ができない。
パラメータで色が塗られる場所を変更できるように修正していく。
ランダム性の付与
ランダム性をもたせるには、【Hash Remap】を使う。
【Graph】ウィンドウで右クリック>Operations>Hash Remap
【Hash Remap】をアレンジカラーの手前とアルファチャンネルの【Max】の手前に差し込む。
この状態で【Hash Remap】のプロパティにある【Seed】を動かすと、色の濃い場所が変わるのがわかる。
左図:Seed3 右図:Seed10
これで、ランダムに色の違う場所が変わるカラーのレンガが出来上がった。
次回は、レンガの汚れの追加、レンガの縁の光沢の追加を行ったあと、ハイトマップや ノーマルマップなどのテクスチャ設定を行う。
というわけで、今回はここまで。