Blenderいじり /GeometryNode編(1)

GW中に外出の予定もなく、時間があるので久しぶりにBlenderいじり。
使い方を調べながら整理していきます。

まずはGeometryNodeのテスト。ついでにShaderEditorも練習。

まずはカラフルな球体の作成から。

1)球体にGeometryNodeのModifierを追加。GeometryNodeEditorの画面は、選択Object変えても表示が維持されるようにPin止めしておく。

2)GeometryInput(今回は球体)から、DistributePointsOnFacesに接続して球表面に、ランダムにポイントを発生。
3)別途、追加しておいたCube001を、左上のOutlinerから、GeometryNodeEditorにDrag&Dropすると、ObjectInfoとして参照できる。そのGeometry出力を、2)のDistributePointsOnFacesのInstance入力に接続。
#Cube001は事前にサイズを小さくして、Object>Apply>Scaleとしてある。Scaleの値を小さくしてサイズを小さくした状態のままだと、GeometryNodeで操作した時に元の大きさに戻ってしまう。忘れがち。ショートカット(CTRL+A)も覚えておく。

ここまでで、球体上に小さなCubeが配置される。
次にMaterial調整。

4)画面左上のShaderEditorでCubeに割り当てているMeterial.001を編集。
編集対象を切り替える場合は、画面上部のSlot選択で行う。Slotに割当てられているMeterialも変更できる。
5)ColorRampを追加。両端の色を赤にして、ColorModeをRGBをHSVかHSLに変更。
補間方法を変更して、全ての色相が発生するようにする。ここではClockwise(時計回り)を選択。
6)ObjectInfoを追加。Random出力を、ColorRampのFac.tor入力に接続。
ColorRampのColor出力をCaseColor入力に接続。これでカラフルな球体の完成。

#Object毎にSlot数分のMeterialを保持しているように見えるが、単なる参照枠なので、同名のMaterialは他Objectと共有されてる、ということを今さら理解。

最後にGeometryNodeに戻って、カラフルな球体を多数配置。
今度は完全にランダムな配置とせず、Meshを起点にNoiseで変動させてみる

7)別途配置したPlane(MESH)を、GeometryNodeEditorにDrag&Drop。生成されたObjectInfoのGeometry出力を、SetPositionのGeometry入力に接続。
#画像だと間にMeshToPointsを挟んでいるけど不要。
8)NoiseTextureを追加。Modeは4Dを選択。Color出力からVectorがでるので、VectorMathのMultiplyに接続。z成分を0にしたVectorと掛け合わせて、X,Y方向だけのVectorを取得。画像では、x,yに10を設定。これが変動幅になる。
#他にもWhiteNoiseノードがあるが完全にランダム。NoiseTextureノードのWが入力にあるmodeだと、Wを変えることで連続的に変化。揺れるような動きが作れる。
9)VectorMathVector出力を、7)のSetPositionのOffset入力に接続。
10)新たにInstanceOnPointsを配置。9)のSetPoints出力(平面上の点)をPointsに、3)のInstanceOnPointsのInstances出力(カラフルな球体)をInstanceに接続。最後にInstances出力を、GroupOutputのGeometry入力に接続すれば完成。

自動でランダムな配置や配色が生成されるのが、本当に楽しい。
これを手作業で割り当てるなんで考えられない。
超基本的なサンプルを作ってみたけど、それでも結構、新たに覚えたことは多い。
ちょこちょこ触って、使い方を忘れないようにしたい。