見出し画像

Blenderで錆びマテリアルを作成する。

はじめに

こんにちはとぅなです。今回はBlenderのシェーダーエディターで錆びマテリアルを作成したのでnoteを作成しました。
ただ、今回も錆びマテリアルを作ることが目的ではなく、プロシージャルテクスチャ作成のための自分なりの考え方を伝えていくつもりです。
かなり簡単な内容なので始めたての人に読んでもらいたいやつですね~

ノードの概観

そこまで多くないので、写すだけである程度の形になると思います。
(ヘッダーは少し改良しています。)
そのため以下では、大きく作成に関する解説はしません。

プロシージャルテクスチャとは

正式名称が、プロシージャルテクスチャなのかプロシージャルマテリアルなのかわかりませんが、ざっくりと自分の中で”拡張性の高い、複数の箇所で用いることのできるもの”という認識です。要は、オブジェクトの形にかかわらず、自身で生成できるように設計したものであるイメージです。

錆びマテリアルの要件定義(?)。

  1. 錆びができる前のマテリアルを決定できるようにすること。

  2. 錆びの密度を変更できるようにすること。

  3. 立体感を付けるためにディスプレイスメントを使用すること。

作成

錆びの出来方の観察

https://elooopa.com/archives/201707/1654

上の画像が分かりやすいのですが、青色の地の部分の縁から均等な感覚で錆びの色が濃くなっていくわけではないため、Blenderで作成しようとした場合に、2つのレイヤーに分けて考える必要があります。具体的には、一つ目のレイヤーで青の地と錆びの境界線を切り替えるためのテクスチャ。
(私はマスグレイブテクスチャを用いました。)
二つ目のレイヤーで錆びの進行度を決めるテクスチャ。
(私はノイズテクスチャを用いました。)
を用いることで、錆びが再現できると考えました。

レイヤーの合成

ここで、レイヤーの組み合わせをイメージしてもらいたいのですが、まず、一つ目のレイヤーで地の部分に錆びは反映されず、そうでない部分のみ二つ目のテクスチャで錆びの表現がなされることとなります。

イメージ図

あとは上の図の通り、青のレイヤー1の下に赤いレイヤー2が見えるように、錆びの表現をレイヤー2を用いてカラーランプで調整し、レイヤー1の白黒の色情報を、シェーダーミックスの係数に差し込めば表現ができます。

補足

先ほどのレイヤーの合成の話はそこまで難しくなかったと思います。
補足として、ヘッダーのように好みの形に切り抜く表現を書いておきます。
ヘッダーの画像を見るとロゴが錆びになっています。
錆びの表現のためにはレイヤー1の内、白い部分を用意すればよかったと思います。
そのため、レイヤー1に追加の画像を合成するのですが、自分なりの方法を一応共有します。
自分的にわかりやすかったの考え方は論理回路で置き換えるというもので、二つの画像の白黒をそれぞれ1, 0に置き換えると分かりやすいと思います。


$$
\begin{array}{l r: r}
0 & 0 & 0 \\
0 & 1 & 1 \\
1 & 0 & 1 \\
1 & 1 & 1 \\
\end{array}
$$

こんな感じで、or回路のように動けばいいので、論理ということで、

二つのデータをこのようにつなげばいいです。
このように一回論理回路のように置き換えて考えれば加算なのか乗算なのか
分かりやすくなるのでおすすめです。


この記事が気に入ったらサポートをしてみませんか?