主に、LightWave3Dに関する事を書き記します。
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
手付けで球を転がす為のLスクリプト「PathMeter_Roll」を作成。
ダイナミクスを利用すれば手っ取り早いですが、それに近い表現を自分の手で作りたかったのでこのようなモノを作りました。Lスクリプトに球の半径を入力して計測したいフレーム範囲を指定すると計測が始まります。
【計測結果】
モーションパスの長さ(移動距離) / 球に必要な回転値
元々はこんな感じで計測結果を表示するだけのLスクリプトだったのですが、移動速度に合わせて回転を付けるのが少々手間だったので、Lスクリプト側で自動的に回転を付けられるようにしています。これはExpressionで常に回転させる制御方法ではなく、Expressionの数式の答えをキー作成するようになっているので後々の編集もし易いです。
AddPosに反転する前の移動距離を入力してLスクリプトを実行すると、ビリヤードの玉のような衝突表現が付けられます。
これで狙い通りのショットが打てるようになりますね。
あと、パス方向へ向ける「AlignToPath_ds」を改良しました。
前の無駄な作業を省いてループ回数を入力して連続的に処理します。
・ループ回数「1」以上にすると次のキーへ移動してパス方向へ向けます。
・0だと現在フレームスライダで合わせているキーをパス方向へ向けます。
まだちょっと扱いにくい点があるので勉強していく内に直していこう。
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
COMMENT