夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

Blenderでジオメトリノードを使用してフォトリアルな雲を作成する。その②

本日はBlenderモデリング枠です。

筆者はフォトリアルな作品が好きですが、フォトリアルな雲を作ったことが無かったため、今回作っていきます。

前回は基本形となるパーツを作成していきました。今回は広域への配置とマテリアルの調整を行います。

redhologerbera.hatenablog.com

〇環境

・Windows11PC

・Blender5.1

〇Z座標を対象にばらまく

今回のパーツをばらまくというときはジオメトリノードでインスタンスとしてばらまくという考え方をします。 インスタンスとはインスタントラーメンやインスタンスコーヒーのインスタンスと同じでUnityにおけるプレファブなどに相当するパーツを流用する概念です。

まずはベースとなるPlaneを配置します。考え方としてはこのメッシュ状にばらまくという形になります。

配置したPlaneに対してジオメトリノードを作成します。面にポイントを配置ポイントにインスタンスを作成を接続します。

これに対して説明すると、Plane上にポイントを配置としてポイントを配置します。そのポイント上にインスタンスを作成するというアプローチです。

次にアウトライナーから先に作成した雲のパーツをドラッグアンドドロップします。

ジオメトリの出力をポイントからインスタンスを作成インスタンスに接続します。これによって面上に雲のパーツが配置されますが、面にポイントを配置の密度を下げておいてください(インスタンスが大量に配置されてPCがクラッシュする可能性があるので)

この状態では同じ雲の形状が配置されているので、パターンが目立ち不自然です。

そこで次に雲のインスタンスの配置をランダムにします。

〇インスタンスのスケールとローテーションをランダムにする

ジオメトリノードでランダム値ランダム回転ノードを追加しポイントからインスタンスを作成ノードの回転スケールに接続します。

これによってスケールと回転がランダムになりより自然になります。ここまでの状態でレンダリングすると次のようになります。

このままでもよいのですがのっぺり感が強いです。もう少しアレンジしましょう。

〇マテリアルのアップデート

のっぺり感を感じるのはマテリアルです。ノイズテクスチャとカラーランプの出力に属性ノードをかけ合わせます。 この時属性名としてdencityを追加します。 これによって密度の属性を受け取れるようになります。代わりにプリンシプルボリュームシェーダーの名前属性を空にします。

加えて掛け算では0~1の値しか取れないため乗算をもう一つ追加して20など大きな値をかけ合わせます。

これによって密度の差が激しくなり、高密度と低密度が混在します。 これだけで一気にフォトリアルになります。(なおここでより分かりやすくするために夕焼けにしています。)

完成した雲が次のようになります。

負荷など次第でありますが、この雲をジオメトリノードで増やすことで自在に空を作ることができそうです。

本日は以上です。