Blenderであそんでみた

3D-CGソフトBlenderの小技や豆知識など。

Blender4.1でマスグレイブテクスチャがノイズテクスチャに統合された件

※記事製作時のバージョン:Blender4.1

 

マスグレイブテクスチャは、「自然界によく見られる複雑な不規則模様」を作るテクスチャです。
リアルな質感作りに欠かせないとても便利なノードですが、Blender4.1で廃止され、ノイズテクスチャに統合されました。
これまでマスグレイブテクスチャで作成していた模様は、今後はノイズテクスチャで作ることになります。

新しいノイズテクスチャの使い方は基本的にマスグレイブテクスチャと同じですが、一部のパラメーターが置き換わっていたり、値の設定が逆になっていたりするなど、知らないと引っかかる違いがあります。
そこで今回の記事は、新しいノイズテクスチャの使い方――特に「旧マスグレイブテクスチャの模様を作る方法」について、詳しく解説します。

 

この記事は、以前公開した「マスグレイブテクスチャを分かりやすく説明してみる/使い方編」と「仕組み編」を読んでいる人向けの内容になります。  
未読の方は下のリンクからからどうぞ。

hainarashi.hatenablog.com

hainarashi.hatenablog.com

 

 

新しいノイズテクスチャでマスグレイブテクスチャの模様を作る方法

下の画像は、4.0のマスグレイブテクスチャで作った模様です。

 

同じ模様を4.1のノイズテクスチャで作る場合は、次のように設定します。

  • [正規化]をOFF
  • 模様の「ぼやけ具合」は[粗さ]で設定する
    ※[次元]が[粗さ]に置き換わりました。

 

なお、[粗さ]の設定方法は[次元]と逆になるので注意が必要です。

  • マスグレイブテクスチャ:次元
    ⇒ [0]が一番模様がはっきりして、値を大きくするほどぼやける
  • ノイズテクスチャ:粗さ
    ⇒ [1]が一番模様がはっきりして、値を小さくするほどぼやける

それ以外のパラメーター(スケール・細かさ・空隙性・オフセット・ゲイン)の使い方はマスグレイブテクスチャと同じです。

 

その他マスグレイブテクスチャとの違いとしては、次のようなものがあります。

  • ノイズテクスチャの[細かさ]は、[マスグレイブテクスチャの細かさ - 1]に相当します。
  • [歪み]が使えるようになりました。
  • [カラー]出力が使えるようになりました。

それぞれの項目については、後で詳しく説明します。

 

そもそもなんで統合されたの?

マスグレイブテクスチャは、「パーリンノイズを元にフラクタルパターンを作る」テクスチャです。
そして、私も今回初めて知ったのですが・・・
実はノイズテクスチャも同じ仕組みの、「パーリンノイズを元にフラクタルパターンを作る」テクスチャだったのです!
なんと!
今までずっと「ノイズテクスチャ=パーリンノイズ」で「ノイズテクスチャ(パーリンノイズ)を元にフラクタルパターンを作るのがマスグレイブテクスチャ」だと勘違いして、以前の記事(仕組み編)でもそう説明しちゃったよ! ※後日修正します。

と、個人的にかなりびっくりしたのですが、同時に納得もしました。ノイズテクスチャの「細かさ」とか、何に使うのか分からなくてずっと謎だったんですよ。
あーすっきり。

というわけで。
これまでは

  • 複雑なフラクタルパターンを作れるマスグレイブテクスチャ
  • 複雑さが低めなフラクタルを元に、標準的なノイズパターンとして扱いやすいように調整されたノイズテクスチャ

の2つのノードに分かれていたのが、同じ仕組み同士で統合された・・・という状況のようです。

 

パラメーターとかの詳しい説明

では、マスグレイブテクスチャから変更のあったパラメーターなどについて、ひとつずつ見ていきましょう。 
※使い方などが変わらないパラメーターについては説明を省きます。

 

正規化(Normalize)

簡単に表現すると、ノイズテクスチャとマスグレイブテクスチャを切り替えるスイッチです。

  • ノイズテクスチャとして使う時は[ON](デフォルト)
  • マスグレイブテクスチャとして使う時は[OFF]

と使います。

 

もう少し詳しく説明すると、「正規化」とは、元になる数値の[最小値~最大値]の範囲を[0~1]に変換する処理です。
「パーリンノイズを元に作られるフラクタルパターン」の元々の計算結果には、マイナス値や、1より大きい値が含まれています。
これを正規化せずにそのまま出力すると、マイナス値は「黒」、1より大きい値は「白」として画面に表示され、白・黒がはっきりしたマスグレイブテクスチャの模様になります。

ノイズテクスチャとして使う場合は、この値を正規化で[0~1]に変換して、カラーや係数を操作するのに扱いやすい値にします。
また、模様としてははっきりした白・黒を失い、全体的にグレー基調で大きな偏りや変化が無い見た目になります。

 

細かさ(Detail)

フラクタルを作るための「パーリンノイズを重ね合わせる回数」を設定するパラメーターです。
この値が大きいほど、重ね合わせるパーリンノイズが増え、最終的に生成される模様の複雑さが上がります。
※最終的に模様がどのように変化するかは、他のパラメーターとの兼ね合いで決まります。詳しくは仕組み編を参照してください。

 

・・・という働きや使い方はマスグレイブテクスチャと同じですが、ノイズテクスチャの[細かさ]は[マスグレイブテクスチャの細かさ - 1]に相当する、という違いがあります。
つまり、

  • マスグレイブテクスチャの[1]はノイズテクスチャの[0]

  • マスグレイブテクスチャの[15]はノイズテクスチャの[14]

となります。

設定できる値の範囲はどちらも同じ[0~15]なので、結果としてノイズテクスチャはマスグレイブテクスチャより一段階複雑(緻密・綺麗)なパターンを作れる、ということになります。
(ノイズテクスチャの[15]はマスグレイブテクスチャの[16(入力不可)])

とは言え、実際に使う時はこの辺のことは気にせず、画面上の見た目を元に感覚で設定すればOKです。

 

なお、マスグレイブテクスチャの[0]はノイズテクスチャの[-1(入力不可)]になるため使えなくなりましたが、もともと「データ無し(真っ黒)」になるだけだったので問題ありません。

 

粗さ(Roughness)

模様のぼやけ具合を設定するパラメーターです。
マスグレイブテクスチャの[次元]から置き換わりました。
[1]が一番模様がはっきりして、値を小さくするほどぼやけます。

 

公式マニュアル(Musgrave Texture Node - Blender 4.1 Manual)によると、[粗さ]と[次元]には次の式の関係があります。

粗さ=空隙性^(-次元)

冒頭で説明した

  • ノイズテクスチャの[粗さ]の設定方法は[次元]と逆になる

というのは、この換算式によるものです。
と言っても、実際に使う時はこの式のことは全く気にせず、画面上の見た目を元に感覚で設定すればOKです。

 

歪み(Distortion

模様を歪ませるパラメーターです。
[0]が歪みなしで、値を大きくするほど歪みが大きくなります。

マスグレイブテクスチャには無いパラメーターでしたが、もともとノイズテクスチャには備わっていたので、使えるようになりました。

 

歪ませパターン自体は変えられないので、他のパターンで歪ませたい場合は、テクスチャで入力ベクトルを操作します。

 

出力(Outputs)

マスグレイブテクスチャの出力は[高さ(Height)]だけでしたが、ノイズテクスチャに統合されたことで[係数(Fac)]と[カラー(Color)]の2つが使えるようになりました。

  • 係数:マスグレイブテクスチャの[高さ]と同じ。1パターンのフラクタルノイズを出力する。見た目はグレースケールの模様になる。

  • カラー:R・G・Bの各チャンネル毎に、異なるパターンのフラクタルノイズを出力する。見た目はカラーの模様になる。

 

カラー出力が使えるようになったので、これまでマスグレイブテクスチャではできなかった「色味のあるフラクタル模様」の作成や、ベクトル操作での「X・Y・Zそれぞれに異なるフラクタルノイズの入力」ができるようになり、応用の幅が広がりました。

 

まとめ

今回の統合についてまとめると、

  • [正規化]と[細かさ]さえ理解すれば、使い勝手はマスグレイブテクスチャとほぼ変わらない
  • [細かさ]の内部計算の変更により、より緻密な模様が作れるようになった
  • [カラー]出力が使えるようになり、応用の幅が広がった

ということで、全体的にプラスになったと思います。
みなさんも、ぜひ新生ノイズテクスチャを活用してください。

 

以上、「Blender4.1でマスグレイブテクスチャがノイズテクスチャに統合された件」でした。

 

twitter

灰ならし (@hainarashi) | Twitter

 

参考サイト

Musgrave Texture Node - Blender 4.1 Manual

Noise Texture Node - Blender 4.1 Manual