見出し画像

文系の blender 4.3 はじめての Geometry Nodes 基礎編 1 - そもそもジオメトリノードとは

とくに文系には、すこしむつかしいイメージのあるジオメトリノードですが、まずはごく基礎の操作から学んでみたいと思います。
初回は、そもそもジオメトリノードとはどのような機能なのかを確認します。


環境 Blender 4.3.0 , Mac Mini M1 OS 14.4


ジオメトリノードの解説やチュートリアルには英語の情報が多いため、ここでは言語を英語とし、日本語は可能なかぎり併記します。


ジオメトリノード?


ジオメトリノードとは、オブジェクトのジオメトリ(頂点、辺、面の位置や配置。形状のこと)を、さまざまなノードによって変更を加える機能のこと。

シェーダー(マテリアル)を作るシェーダーノードを操作したことのあるユーザーならば、「ノード」による操作にはすこし馴染みがあるかもしれない。

Shader Nodes

シェーダーエディターの一例。

Noise Texture ノードを、ディフューズシェーダーノードのカラーに接続し、模様(テクスチャ)として、表面に出力している。


ノードによってなんらかの操作を加え出力する、という流れはジオメトリノードでも同じで、Noise Texture を含め、ノードの多くはシェーダーノードと共通だ。

Geometry Nodes

ジオメトリノードの一例。詳細は以降の記事で紹介する。

Noise Texture はシェーダーノードではマテリアルに模様をつけていたが、ジオメトリノードではオブジェクトの各頂点の位置にランダムな変更を加え、ジオメトリ(形状)を変化させている。



それはモディファイアだ


ノードによってジオメトリ(形状)に操作を加えることのできるジオメトリノードだが、それは同時に「自作の」モディファイアでもある。

Solidify(ソリッド化)モディファイア。

たとえば、オブジェクトに厚みをつける Solidify モディファイアがある。ジオメトリに操作を加える、という目的では、ジオメトリノードと同じで、各種モディファイアは、ある意味、blender に「標準で用意された」ジオメトリノードともいえるだろう。

下は、後述の手順で作成したジオメトリノード「MoveObject」。オブジェクトを移動させるというごくかんたんなジオメトリノードだ。

オブジェクトを Z 軸に 3 m 移動

ジオメトリノード作成後、モディファイアプロパティをみると、作成した「MoveObject」モディファイアが追加されている。これはモディファイアそのものであり、適用(Apply)したり、他のモディファイアと組み合わせることができる。ジオメトリノードを作成したことで、オリジナルのモディファイアを作ったということになる。


作ってみよう


ともあれ、ジオメトリノードを作ってみよう。オブジェクトを移動させるだけのごく単純なジオメトリノード「MoveObject」だ。

  • なんらかのオブジェクト(ここではデフォルトの立方体)をシーンに追加

  • Geometry Nodes タブをクリックし、Geometry Nodesワークスペースに変更。

  • New ボタンをクリックする

  • ここでは、ジオメトリノード名を「MoveObject」とした。

もちろん名前は任意に設定可能
  • 上部メニューの、Add > Geometry > Operations > Transform Geometry を選択するか、あるいは、Shift + A > Geometry > 以下同… を選択する。

ノードは大量にあるので、Shift + A > Search から単語検索するのが便利。
追加 > ジオメトリ > 処理 > ジオメトリトランスフォーム
  • 追加された Transform Geometry ノードを Group Input 、Group Output 間に接続する。

追加された Transform Geometry ノード

Group Input ノードからは、最初に追加した立方体のオブジェクトデータが出力されている。それらのデータを、Transform Geometry ノードの、Translation(移動)、Rotation(回転)、Scale(スケール)の各値で操作し、その結果が Group Output ノードに出力される。各値を変更すると、立方体が移動したり、回転、拡大縮小されるのがわかるだろう。


完成


これだけで、新ジオメトリノードの完成。このノードでは、単にオブジェクトを移動したり回転させることができるだけだが、他の各種ノードを接続したり組み合わせることで、さらにさまざまなオブジェクトの形状の操作を行うことができる。ジオメトリノードを作るだけであれば、意外とかんたんなのだ。


補足
なお、必須ではないし、必要のある場合のみだが、前述のようにモディファイアプロパティでノードの値を操作したい場合は、次のように追加の接続を行う。

  • Translation ソケット から、Group Input の空のソケットに接続する。

モディファイアプロパティ Translationデータが表示された

この操作で、モディファイアプロパティに接続した情報が表示され、他のモディファイア同様、モディファイアプロパティ内で値を操作することができるようになる。

なお、これらのソケットは、N キーでサイドパネルを表示し、「Group」タブ内でソケットの追加、削除等を行える。


Group Input は必ずしも必要ではない
なお、Group Input にはジオメトリノードを適用したオブジェクトの情報が入るが、必ずしも必要ではない。

立方体にジオメトリノードを適用。立方体のデータがそのまま出力される。
Group Input ノードを X キーで削除し、Ico Sphere ノードを接続

最初に適用したオブジェクトは消え、代わりに ICO 球のデータが出力される。つまり、このジオメトリノードは、適用したオブジェクトがなんであれ、強制的に ICO 球に置き換える機能をもつ。

編集モード

他のモディファイア同様、編集モードでは、変更を加える前のオリジナルのジオメトリ(形状)が表示される。ここでも、あくまでオリジナルは最初の立方体だ。よくある操作なので、頭に入れておこう。



まとめ


  • ジオメトリノードは、オブジェクトのジオメトリ(形状)をノードによって操作する機能である。

  • ジオメトリノードは、オリジナルのモディファイアでもある。

  • ジオメトリノードを作ることそれじたいはかんたんだ。


まとめると上の通りだが、とはいえ、ジオメトリノードが敬遠されがちなのは、なにをするのかよくわからないノードが大量にあって、どれを選んでよいのか、どのように接続したらよいのか、などがわかりにくいためだと思う。

そこで、次回の記事から、動かしたり、回転させたり、といったごく基本的な操作から動作別にいくつかの主要ノードとその使い方を紹介していきたいと思います。


いいなと思ったら応援しよう!