最近Blenderでモデリングしていないお話
「そう、僕がモデリングらしいモデリングを最後にしたのはいつのことだったか…」のような出だしから始まる、Blenderによるプロシージャルテクスチャのお話です。
この記事は Blender Advent Calendar 2020参加記事です。
申し訳程度にはメッシュ触ってはいるんですが、最近は特にプロシージャルな和柄作って遊んでる感じですね。
いろいろな楽しみ方ができるBlenderさんの懐の深さよ。
なお自身の記事では、プロシージャルテクスチャ関連だとこちらが結構読まれているようです。
そう、大体の方が予想している通り、「マテリアルノード」のお話です。3日連続でBlender Advent Calendarで扱われる話題が「ノード」ってどうかしていると思ったあなたは、その感覚を忘れないようにしてくださいませ。
題材は?
この間Boothに公開した「きめつの和柄」の中から、ということにしましょう。市松、麻の葉、亀甲、鱗、という柄ですね。ノード自体はBOOTHで公開しているもの、またはNoteで個別にファイルを公開しているのでそちらからどうぞ。ファイル自体は2.83.7で作ってます。
1.麻の葉
2.亀甲
3.鱗
1.麻の葉
麻の葉模様を作るにあたって、亀甲模様と同じで6角形を敷き詰める感じで構成できることに気がついたので、まあまあ少なめのノードで構成できましたよ?って感じです。以外と簡単。
切り取るのは赤の実線部分ですね。そしてこの6角形は「Xに対象」であり、「Yに対象」ということも加えてお伝えしておきます。
なので Absolute の計算をさせているところを中心に見ていくと良いと思います。
2.亀甲
実はこの柄、矢絣(やがすり)のバリエーションで作っています。矢絣模様については記事で作り方紹介しています。
今回の柄については、X成分をYに加算して三角な波打つ模様を2組作って、互い違いに存在するように位置を調整してあげて亀甲のよう(六角形が並んだような形)にする、と。
マテリアルノードを開いてノードの状態を直接確認するNode Wranglarの機能(Shift+Ctrl+クリック)を使ってみると良いですね。
Map Range ノードは結構使いでがありますね。
3.鱗
鱗、というには少し何かが足りないですね。
こちら、市松模様+三角形という風に見ることができます。
そして、その三角の角をよーく見てみると、「あれ、角が丸くなってない?」というものです。
少しパラメーター(Distance)をいじると…丸っこくなります。
三角形を作るときに Maximum 使うのではなくて Smooth Maximum を使って丸みをつけるようになっています。あっ、これMathノードです。
2.81-2.83で追加されたノードやオペレーターが地味に便利
上記で触れているMap RangeノードやMathノードのSmooth Maximumオペレーターなどを使うことで、2.80またはそれ以前よりもシンプルにノードを組むことができます。他にも同じタイミングで追加された、拡張されたノードもあるので探してみると良いです。
なお、「ノードが追加された」とか「ノードのオペレーターが」とかいう話題はBlender Developer Wikiのリリースノートには書かれていると思うので、2.81から2.83のそれぞれのリリースノートを確認していく感じですね。
[2.81/Cycles] Shader nodes for Cycles and Eevee have been extended.
その他:タイトルの画像について
あー、これはですね…Blenderの聖地が福岡にあるっていうことで行ってきたときのやつですね。地元の人ならお気づきでしょう、CANALCITY HAKATAにそれはあります。