使用ソフトウェア | バージョン | 備考 |
---|---|---|
Blender | 3.2 |
日本語:カーブサンプル
例えば次のようなスパイラルカーブがあるとして
このカーブ沿いに「1m進んだ先の座標を取得は?」
または「始点を0、終点を1とした時に0.25(カーブの長さの25%)の座標は?」
といった目的で使うノード。
つまり、次のようなことが可能。
カーブ上のポジションに沿ってスフィアを移動している。
Curve
> Sample Curve
上で紹介したスパイラルをなぞる例は次のノードを使用している。
Sample Curve
以外のノード解説は省略するが、Spiral
ノードは別記事で解説あり。
【Geometry Nodes】Curve Spiralノード【Blender】 | 謎の技術研究部
日本語:係数
この例ではFactor
モードが使われている。
このモードにした場合はカーブの何割の位置を取得するかを下の数値入力のところに入力する。
例えば0.25
とした場合はスパイラル全体を100%としたとき、25%の位置を取ってくる。
このモードのメリットはカーブが実際何メートルなのかを知る必要が無いこと。
Factor
では割合を入れたが、Length
モードだと長さの絶対値を指定する。
上と違って絶対値なので終点が何メートルなのかは分からない。
厳密なコントロールをしたい時に使えるが、終点までの距離をオーバーしてしまっても終点で停止するので注意。
Set Position
を使ってレールにする場合はPosition
のソケットをOffset
に入力するようにしよう。
またTransform
ノードでも良い。
基本は以上。この先が難しく感じたら無理に覚える必要はない。
タンジェントは単なる「接線」
ひとまず数学的に難しい計算は必要ないが、ちょっと理解が必要。
次の例でCurve Line
を組み合わせて接線を実際に引いてみよう。
Sample Curve
によって指定された頂点を通る直線が引かれる。
ちょっと分かりにくいかもしれないので直線を延長して、先程のように円の上を動かしてたのが次。
接線が移動しているのが分かる。
こちらのソケットはノーマル(法線)方向を出力する。
法線は接線に対して垂直な線
ノードを次のように改造すると
法線方向に線が伸びていることが確認できる。
なぜCurve Line
のDirection
モードを使っているのか疑問に思う人もいるかと思う。
Tangent
もNormal
もPosition
を原点とした単位ベクトルが出ているだけだからである。
つまり絶対的な座標ではなく、相対的な方向をCurve Line
に入力している形になる。
カーブをレールとして使うケースが殆どだと思うが、使い方によっては色々な可能性を秘めたノードだ。
今回あまり実用的な例が掲載できなかったが、他の使い方も研究したい。