☆LightWave3D☆ ~Free Diary~

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

   


2013/03/05 【ユーティリティ関数_その8】

54b8bd0a.jpeg
Projectile Motionを学びます。

どうやらこれはアイテムを曲線的に移動させる為の数式みたいですね。
制御的にはLWのエミッターに重力設定をするような感覚に近くて様々な弧を描いた動きを作り出すことが出来ます。

野球のボールのカーブを表現したり銃撃で弾が弧を描くように飛んでいったり飛行機の離陸する動きを表現したり、あと、一つの軸だけ(Y軸)を制御すると木から落ちるリンゴの動きにも使えそうです。

でも、自分でキー作成して動きを作ったのが早いんじゃないかと思ってしまいますね。
今のままだと正確な動きを作るために必要なくらいしか感じられないです・・・。

 


僕の個人的な考えはさておき、とにかく触っていきましょう。
Projectile Motionは永続型の「タイプA」と範囲型の「タイプB」の二種類が存在します。

 


【Projectile Motion (TypeA)】
Projectile_Motion_A_test_0001.gif
 

[CT1.Position.Y]*Time*Time/2 + [CT2.Position.Y]*Time + [CT3.Position.Y]
 

 ※:曲線の強さ。
 pm_A_ct1_001.png



 ※:曲線の傾き。
 pm_A_ct2_001.png


 ※:曲線の位置。
 pm_A_ct3_001.png


タイプAは値がシンプルで編集し易いです。
上のGIFはZ軸移動に「pow」を利用して徐々に減速するように動きを付けましたが、Z軸もProjectile Motionで制御すれば良かったかなと後々思いました。

バウンドするようなボールの動きを作ったものの、これは別に手付けでも良いような気がする。
動きを作る手間はそれほど変わりが無いように思えます。



 


【Projectile Motion (TypeB)】
pm_B_001.png

(Frame >= [CT1.Position.Y] && Frame <= ( [CT2.Position.Y] < [CT1.Position.Y] ? 2*[CT3.Position.Y]*30/9.8 + [CT1.Position.Y] : [CT2.Position.Y])) ? (-9.8*(Time - [CT1.Position.Y]/30)*(Time -  [CT1.Position.Y]/30)/2 + [CT3.Position.Y]*(Time - [CT1.Position.Y]/30) + [pow.Position.Y] ) :  Value

 ※:開始フレームの値。(1m、1°で1フレーム。)
 ※:終了フレームの値。
 ※:曲線の強さ。
 ※:曲線の位置。

う、・・・何て長い数式なんだ。
Expressionビルダーのパネルを最大まで大きくしてようやく全ての入力値を適用出来るとか・・・びっくりですよ。
入力値周りの式の編集は出来なくはないけど、全てを理解するのは難しそうだなぁ。

タイプBはタイプAと違って曲線付けの始まりと終わりのフレーム範囲を決める事が出来て、それ以外はタイプAと変わりありませんが弧を描く大きさを調整するのが少し難しい感じがします。
そしてこの長ったらしい数式です。
値の編集がしにくい・・・。


常用で利用するならタイプAを使ってアイテムの表示/非表示を上手く使って見せていくと思います。
タイプBと同等な感じで曲線に曲げるフレーム範囲を決める事が出来なくもないですし、このExpressionを多用するならシンプルな数式を使ってLWの負荷を抑えたいところです。



【何となく作った】
Projectile_Motion_MotTest_syageki3.gif これはタイプAを使ってます。

機内のゆったりとした揺れはOscillatorで、射撃の激しい揺れは「randu」で制御しています。

ライフルやランチャー系の弾はエミッタとHVかRelativityでやっていったのが楽かな?
まだこのExpressionを使う意味をイマイチ理解出来ていない気がするので、使えそうな機会があったら積極的に使って良い使用方法を見つけていこうと思います。


ユーティリティ関数はこれで残り7つ。
この調子でいけば3月上旬には終わりそうな気がしますね。
頑張って進めていきましょう。

拍手[0回]

COMMENT

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

カレンダー

08 2017/09 10
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

最新コメント

[09/16 Aaronsat]
[09/15 Aaronsat]
[09/15 Aaronsat]
[09/14 Aaronsat]
[09/14 Aaronsat]

最新トラックバック

バーコード

フリーエリア

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