ちょっとは見やすくなるんじゃないっすかね?
どうもぺんぎんっす( ◎v◎ )
しばらくブログを書かないうちに、新関数がいくつか追加されたっす。
明日まとめて書くっすね。
今回はその新関数の1つ、llSetKeyFramedMotionの話っす。
llSetKeyFramedMotionについてはLSL Portalをどうぞっす。
非物理オブジェクトの動きをまとめて記述できる関数っす。
llSetLinkPrimitiveParamsFastを何回も呼び出さなくて済むっす。
色とかカタチが変わる場合には使えないっすけどね。
動きをループさせたりするオプションも付いてるっすよ。
この関数のwikiを見て、なるほどと思ったのが、
[座標]・[姿勢]・[秒数]の3つで「動き」というものが表現されるという点っす。
当たり前と言えば当たり前なんっすけどね。
一般的な動きの表現方法は、1コマあたりの再生時間を決めておいて、
そのコマでの座標・姿勢を記述していく方法っす。
1秒あたり何コマっていう「FPS(フレーム・パー・セカンド)」というのは
聞いたことないっすかね?
この方法だと、止まっているときは同じ数値が繰り返し出てきたり、
再生時間に対してデータ量が比例して増加したりと、ムダがあるっす。
[座標]・[姿勢]・[秒数]の3つで書く表現方法だと、中間の状態は
計算してやらないと出ないという問題があるっすけどね。
時間とメモリのトレードオフの関係にあるわけっす。
SLはメモリの制約が厳しいので、時間を犠牲にメモリの得を取った方が
良いケースが多いっす。
llSetKeyframedMotion以外に使える記述方法かもしれないので、
覚えておくと良いかもっすね。
d/dt が一定なのか変化するのか、っていうイメージっす。
0 件のコメント:
コメントを投稿