使用ソフトウェア | バージョン | 備考 |
---|---|---|
Blender | 3.5.1 |
ジオメトリノードで作ったモデルはそのままだと頂点の編集などができない。
メッシュ化する場合はオブジェクトのモディファイアタブにて、ジオメトリノードモディファイアを適用してやればよい。
しかし...
次のエラーが出て適用ができない時がある。
英語:Evaluated geometry from modifier does not contain a mesh
日本語:モディファイアーの評価済みジオメトリにメッシュがありません
今回はこの解決法。
ジオメトリノードの一番最後にRealize Instancesノードを挟んでから適用すれば良い。
日本語ノード名:インスタンス実体化
たったこれだけでうまくいく。
上のノード例を見て分かるように、直前のノードがInstance on Points
(ポイントにインスタンス作成)が入っている。
このノードが「インスタンス」という形式を出力しており、これがメッシュではなく仮のコピーが配置されているからだ。
つまり架空のメッシュがそこにあるだけなのでモディファイアを適用しようとしても「メッシュが何もない」ことになってしまう。
というわけで、Realize Instances
を使うことによってこの仮のコピーだったものを実体化し、モディファイアを適用した時にエラーにならなくなる。
ジオメトリノードのままだと編集モードで頂点を直接編集することはできない。
これをメッシュ化することにより直接頂点を1個ずつ操作することが可能になる。
また、メッシュ化することでUVを手作業で展開できるようになる。
これにより精密なテクスチャリングも可能になる。
ただし、一度適用してしまうとジオメトリノードの編集には戻れないので注意。
インスタンスという概念が少々わかりにくいのが難点。
別の話になるが、例えばインスタンスとして複数配置した時に「その中の特定の1個だけ変形したい」といった時にもRealize Instances
が必要かと思う。
ただし、闇雲にRealizeすれば良いわけではなくインスタンスのままのほうが演算が軽く済むと思われるので、不要であればインスタンスのまま扱おう。