主に、LightWave3Dに関する事を書き記します。
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
続きです。
【rad (度数からラジアンへ)】
動かしてるのは黄のNull。 赤と緑は制御。
前記事で紹介した「deg」では入力値がラジアンから度数へと変換されてアイテムの「移動」による「回転」の制御が等しくなりました。
「rad」はその逆バージョンで入力値の度数からラジアンへ変換されて「回転」による「移動」の制御が等しくなります。
(degの逆バージョンと考えれば良い。)
う~ん、こうやって使ってみるとラジアンは結構利用出来そうですね♪
ラジアンに関しての説明は「deg」に書かれているので、そちらを参考にしてください。
僕の大好きなノイズです。
関数は「random」ですが、ノイズという言い方はグラフ編集のモディファイヤの「Noisy Channnel」やRelativityのNOISEの関数から来ているので、僕にとってはノイズを与える機能になります。
以前は「Noisy Channnel」でアイテムを使ってノイズ制御する事が出来なくてRelativityを使っていましたが、従来のExpressionでも同じことが出来るんですね。
(流石に複数アイテムをランダムに一括制御するのはRelativityが向いてるけど。)
ノイズの関数を入力して右と左にある赤と緑のNullのPositionXのチャンネルを入力します。
これがノイズを発生させる範囲の入力値になります。
random([R.Position.X],[L.Position.X])
この状態だと、赤と緑のNullの範囲を黄色いNullがランダムに動くようになります。
でも、このままだとノイズが強すぎるのでノイズを制御する為のNull(ピンク)を追加します。
名称は「Power」にしましょう。
[Power.Position.Y]*random([R.Position.X],[L.Position.X])
これで上のgifのように制御出来るようになりました。
ピンクのNullがY軸1m移動するとノイズのパワーが100%になるので、もう少し広い範囲で(2mで100%になるように)制御したい場合は・・・
[Power.Position.Y]/2*random([R.Position.X],[L.Position.X])
このように入力すればOKです。
【randu (初期値付き乱数)】
緑のNull位置-1m以下 ~ 1m以上でノイズは消える。
randu([L.Position.X])
これもノイズを与える関数です。
randomとの違いは、この関数は入力値をひとつだけでノイズを発生する初期値として扱われます。
入力値に設定したアイテムを動かすと-1m~1mの範囲の位置になければノイズは発生しません。
そして、ノイズの幅は常に0m~1mの範囲で同じノイズモーションしています。
LScript関数はこれで残り4つ。
のんびりとですがどんどん覚えていこうと思います。
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 |