Blender3に向けてプレスリリースが盛んですが、なんといってもGeometry Nodesがよくわからない。2.93のデモファイルの作者がレッスンを開いているようなので、有料でしたが参加してみました。
レッスン場所(19ドル)はここ
これからしばらく、そのレッスン内容を元に、Geometry Nodesの基本についてメモがてらに記事化してみます。
今回のテーマは
属性を理解する
- 属性の使用方法
Built-In
vsNamed
対Custom
属性とは何ですか
です。(この章は、英語力不足のためあまり理解できていません、ご了承ください)
平面メッシュにGeometryを追加します。
左上のエディタにポジション属性が表示されています。一点を移動させるとそのポジション属性が変わります。
頂点を増やすと、それぞれのポジション属性が表示されます。
1 Built in 属性
ポジション属性はBuilt in属性で、常に存在して消去することはできません。また、データ型やドメインは変更できません。Built in属性としては他に、Radius、Material index、Crease、Normal、Shade_smoothがあります。
面の属性を表示させると、 Shade_smooth、 Material index 、 Normal が表示されます。
例えば各面にマテリアルを割り当てると Material index の値が変化します。スムーズシェードをかけたり、面の向きを変化させて他の属性の変化を確認してみてください。
2 Named属性
この属性はデフォルトでは存在しませんが、特定のノードによって暗黙的に使用されます。これらの属性のデータ型は、変更できます。Scale、Rotate,IDがあります。
下準備としてポイント配置とポイントインスタンスでCubeを散乱させます。
ポイント配置ノードを追加します。
Cubeを一つ作成し、ポイントインスタンスノードでそのCubeをインスタンス化します。
ランダム化属性ノードを加え、属性欄に「Scale」と入力します。Scale属性の意味はBlenderが暗黙的に理解していることがわかります。
同様にRotate属性も使用してみます。
Rotate属性のランダム化ノードのデータタイプをFloatからVectorに変更し、値を適当に変更してみます。このNamed属性はデータタイプの変更が可能となっていることがわかります。
3 カスタム属性
( 以下、私の英語能力では、残念ながらこのカスタム属性がどう機能するのかはわかりません。動画に沿って画面を紹介するだけですが、ご了承ください。)
ポイントインスタンス、ポイント配列ノードを削除します。属性ランダム化ノードの属性フィールドに任意の文字を入力します。入力された属性が表示されます。
属性ランダム化ノードを複製し、属性フィールドに任意の文字を入れ、そのノードを出力するよう設定すると、新しい文字列の属性が生成されます。
二つのランダム化ノードをGeometry統合ノードで統合して出力すると、ポイント領域に2つのカスタマイズ属性を持った平面となります。
次回の予定は
インスタンスを理解する
- インスタンスとは何ですか?
- インスタンスはいつ「実際の」ジオメトリとして計算されますか?
です。