☆LightWave3D☆ ~Free Diary~

悪戦苦闘の3D制作の日々と、悪戦苦闘の日常を書き記していく日記です。

   


2013/01/17 【LScript関数_その5】

16754bc4.jpeg続きです。



【rad (度数からラジアンへ)】

rad_test_0001.gif 動かしてるのは黄のNull。 赤と緑は制御。

前記事で紹介した「deg」では入力値がラジアンから度数へと変換されてアイテムの「移動」による「回転」の制御が等しくなりました。
「rad」はその逆バージョンで入力値の度数からラジアンへ変換されて「回転」による「移動」の制御が等しくなります。
(degの逆バージョンと考えれば良い。)

う~ん、こうやって使ってみるとラジアンは結構利用出来そうですね♪
ラジアンに関しての説明は「deg」に書かれているので、そちらを参考にしてください。





【random (乱数)】

random_ex_0001.gif

僕の大好きなノイズです。
関数は「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 (初期値付き乱数)】

randu_test_0001.gif 緑のNull位置-1m以下 ~ 1m以上でノイズは消える。

 

randu([L.Position.X])

これもノイズを与える関数です。
randomとの違いは、この関数は入力値をひとつだけでノイズを発生する初期値として扱われます。
入力値に設定したアイテムを動かすと-1m~1mの範囲の位置になければノイズは発生しません。
そして、ノイズの幅は常に0m~1mの範囲で同じノイズモーションしています。



LScript関数はこれで残り4つ。
のんびりとですがどんどん覚えていこうと思います。

 

拍手[0回]

COMMENT

NAME
TITLE
MAIL(非公開)
URL
EMOJI
Vodafone絵文字 i-mode絵文字 Ezweb絵文字
COMMENT
PASS(コメント編集に必須です)
SECRET
管理人のみ閲覧できます

カレンダー

10 2019/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

プロフィール

HN:
d_suzukky
性別:
男性
自己紹介:
こんにちは、d_suzukkyです。

田舎暮らしでのほほんと3DCGの勉強をしています。

ブログ内検索

Booklog

最新コメント

最新トラックバック

バーコード

フリーエリア

Copyright ©  -- ☆LightWave3D☆ ~Free Diary~ --  All Rights Reserved
Design by CriCri / Photo by Geralt / powered by NINJA TOOLS /  /