2022-10-20

【Geometry Nodes】Set Curve Radius(カーブ半径設定)ノード解説【Blender】

カーブをメッシュ化するときに「太さ」を与えることができる。木の枝や毛束の先端のように先細り表現に役に立つ。

Article Image
使用ソフトウェアバージョン備考
Blender3.3

Set Curve Radiusノード

日本語:カーブ半径設定

Set Curve Radius外観

概要

次のようになカーブがあるとする

カーブだけの例

このカーブに対してSet Curve Radiusノードを使って「半径」を与えた後メッシュ化すると

メッシュ化

メッシュ化(細く)

カーブがメッシュ化されるときの「太さ」をコントロールできる。

また、次のようにポイントに応じて太さを変えることができるようになるので

先細り作例

先端は鋭く、逆側は太くするといった処理も可能。

出し方

Curve(カーブ) => Set Curve Radius (カーブ半径設定)

基本の使い方

まず覚えておくことは、単純にカーブにこのノードを指しただけでは効果がない。

だめなノード例

このノードの後ろでCurve to Mesh(カーブのメッシュ化)を行ったときに初めて効果があるので

正しい例

こうすることでRadiusを変更すると自由にカーブの太さを変更できるようになる。

Curve

Curveソケット

Curve(緑色)のソケットにはカーブを入れる。メッシュを入れるとエラーとなる。

だめな例

Radius

日本語:半径

Radiusはそのままカーブの太さ。お好みに合わせて設定する。

Radius

冒頭で掲載したこの例は半径を0.1mに設定した例

メッシュ化

Selection

日本語:選択

半径を「変更したくない」ポイントにFalseを入れてやると、そのポイントは半径が変更されない。

何も入力しなければデフォルトでTrueとして扱われる。

したがってSelectionがよくわからない場合は何も入力せずに使えばよい。

Selectionについて詳しく知りたい場合は次の記事

【Geometry Nodes】Selection(選択)って何【Blender】 | 謎の技術研究部

理解が難しいので例を使う。

まずはすこし角張った円を作る。

  • Curve Circleで円を作る
  • Set Curve Radiusで半径を0.5mに設定
  • Curve to Meshでメッシュ化

ノード例

実行結果

実行結果

ここに次のノードを追加してSelectionへ入力。

追加ノード

これにより頂点番号が0のカーブだけFalseが入る。

つまり0番目の頂点だけ半径が設定されないままになるので

変更後の結果

1頂点だけ半径が極細のままになっている。

先細りにする方法

では、冒頭で解説したように片方を細く、もう一方を太くするにはどうしたら良いのだろうか。

このケースではSelectionを使う必要はない。

Spline ParameterFactorを調整してRadiusに入れてやれば良い。

先細りノード例

先細り作例

Multiply(乗算)の値を動かすことで太さを調整することが可能。

何が起こっている?

Spline ParameterFactorを簡単に説明するとカーブの始点に対して0, 終点に近づくに連れて1に近づいていくというノード。

Radiusのソケットはひし形(フィールド)となっているため頂点ごとに別々の値を送ってやることができる。

半径が大きくなる解説

つまり左側は0右側は1という数字が入るので、それをMultiplyして半径とすることで先細りが実現される。

さいごに

こちらも非常によく使うノード。

Spline Parameterを使った例もかなり有用なのだが初心者には少し理解が難しいかもしれない。

このあたりを完全に理解すると木や植物をジオメトリノードで作る例などで大活躍するので色々試してみてほしい。



謎の技術研究部 (謎技研)