アイテムモーションの球面線形補間プラグイン
キー間の補間をするプラグイン。
LW8からのQuaternionBooster(マニュアル上は説明が無いのでアレだけど)。
此方の(http://hheaven.net/)のvmd2lws同梱のQuat。
此方の(http://pyonko.yuto.to/)のSmoothDrive。
キーを0F:<0,0,0>→30F:<0,-90,0>→60F:<90,0,-90>とした場合。
データはチャンネルに直接Double精度の値を与えている(LWのコマンド経由の89.9ではない)。
理屈的には1Frame当り3度ずつ変化するのが妥当。
後二者は精度誤差(or表示誤差)程度で合致。
QuaternionBoosterは15Fと45Fに限り妥当(45度)だけど、それ以外では2.7~3.2度前後の変化となり、誤差以外の問題がありそう。
((追記: 球面線形でなく、単なる線形補間なのかも。 二点間の仮想直線上に置いては線形/等分だけど、それを弧にそのまま充てると非線形になるという・・・。 ))
SmoothDriveは三次補間オプションがあるけれど、それが何なのかは知らないのと、ONでは得体の知れない回転になるのでプラス要素にはしない。
QuaternionBoosterは精度/品質の面から選外として、QuatとSmoothDriveはお好みで、って感じ?
個人的にはファイルサイズ的にQuat.pに分があるか。
未確認だけど、IKBoosterを使っている場合に(自動で適用される)QuaternionBoosterと差し替えると良いかもしれない。
----
使い勝手の面から、キーの補間種や状態による影響をどう受けるか、という点を見逃していた('д`)
取りあえず、リニアの場合は上記の通りとして、
TCBでは、
通常の補間:向きが違うけど上から見て「て」の字状の軌跡。
QB:TCBによる影響を常に受ける。 それにより~30と30~で直線的な動きにならない。
車のレースでのカーブの走り方のようにIn/Outで膨らみのある軌跡になる。
Quat:前後のキー値が同一ならその区間をリニアとして扱ってる?
直線的な軌跡を取るけど速度変化が起きる感じ。
SmDr:常にリニア扱い?。
他の補間種は省略。
次に変則的なキーの時。
動きの意図は上記と同じだけど<0,0,0><*,-90,*><90,0,-90>の時(*はキー無し)。
30FのHBは補間によって符号違いの同一値になるので、通常補間では上記と動きに違いは無い。
QB:キー無しの影響か、Pitch方向(高さ)への作用が殆どなく、上から見ると向きは違うけど「ノ」字状の軌跡になる。
Quat:同上。
SmDr:キー有りの時と同じ軌跡になる。TCBでもリニアになる、のも同じ。 単純に前後のキーを見るだけでなく、一つでもキーがあれば仮想のキーを置いて処理してるとか?
運用の面ではSmoothDriveが気が利いていて良い感じ。
常に等速になるのが難点になるかもしれない(( でも、その為のプラグインではあるのだけれど ))。
QBとQuatではキーはHPBで1セット無くてはならないのが難点。 両者共にそういう状態を前提にしたプラグインなのだろうから、仕方ないと言えば仕方ない事なのだけれども。
(IKBoosterは全部にキーを打つし、vmd2lwsも変換結果として全部にキーを打つんじゃないかな)
SmoothDriveが補間によって速度にウェイト付けして動かしてくれると一番勝手が良さそうなんだけどなぁ('з`)
対象とするアイテムの動きの傾向に合わせて使い分けるのが良い、ってオチになるのか('ε`)
----
未確認だけど、キーのある時刻のEnvelopeを見てるのか、Channelを見てるのかItemInfoを見てるのか、という点も要確認かもしれない。
キーを走査しておきながら、わざわざItemInfoを見る事は無いだろうけど、Newtekならありえるしw
LW8からのQuaternionBooster(マニュアル上は説明が無いのでアレだけど)。
此方の(http://hheaven.net/)のvmd2lws同梱のQuat。
此方の(http://pyonko.yuto.to/)のSmoothDrive。
キーを0F:<0,0,0>→30F:<0,-90,0>→60F:<90,0,-90>とした場合。
データはチャンネルに直接Double精度の値を与えている(LWのコマンド経由の89.9ではない)。
理屈的には1Frame当り3度ずつ変化するのが妥当。
後二者は精度誤差(or表示誤差)程度で合致。
QuaternionBoosterは15Fと45Fに限り妥当(45度)だけど、それ以外では2.7~3.2度前後の変化となり、誤差以外の問題がありそう。
((追記: 球面線形でなく、単なる線形補間なのかも。 二点間の仮想直線上に置いては線形/等分だけど、それを弧にそのまま充てると非線形になるという・・・。 ))
SmoothDriveは三次補間オプションがあるけれど、それが何なのかは知らないのと、ONでは得体の知れない回転になるのでプラス要素にはしない。
QuaternionBoosterは
個人的にはファイルサイズ的にQuat.pに分があるか。
未確認だけど、IKBoosterを使っている場合に(自動で適用される)QuaternionBoosterと差し替えると良いかもしれない。
----
使い勝手の面から、キーの補間種や状態による影響をどう受けるか、という点を見逃していた('д`)
取りあえず、リニアの場合は上記の通りとして、
TCBでは、
通常の補間:向きが違うけど上から見て「て」の字状の軌跡。
QB:TCBによる影響を常に受ける。 それにより~30と30~で直線的な動きにならない。
車のレースでのカーブの走り方のようにIn/Outで膨らみのある軌跡になる。
Quat:前後のキー値が同一ならその区間をリニアとして扱ってる?
直線的な軌跡を取るけど速度変化が起きる感じ。
SmDr:常にリニア扱い?。
他の補間種は省略。
次に変則的なキーの時。
動きの意図は上記と同じだけど<0,0,0><*,-90,*><90,0,-90>の時(*はキー無し)。
30FのHBは補間によって符号違いの同一値になるので、通常補間では上記と動きに違いは無い。
QB:キー無しの影響か、Pitch方向(高さ)への作用が殆どなく、上から見ると向きは違うけど「ノ」字状の軌跡になる。
Quat:同上。
SmDr:キー有りの時と同じ軌跡になる。TCBでもリニアになる、のも同じ。 単純に前後のキーを見るだけでなく、一つでもキーがあれば仮想のキーを置いて処理してるとか?
運用の面ではSmoothDriveが気が利いていて良い感じ。
常に等速になるのが難点になるかもしれない(( でも、その為のプラグインではあるのだけれど ))。
QBとQuatではキーはHPBで1セット無くてはならないのが難点。 両者共にそういう状態を前提にしたプラグインなのだろうから、仕方ないと言えば仕方ない事なのだけれども。
(IKBoosterは全部にキーを打つし、vmd2lwsも変換結果として全部にキーを打つんじゃないかな)
SmoothDriveが補間によって速度にウェイト付けして動かしてくれると一番勝手が良さそうなんだけどなぁ('з`)
対象とするアイテムの動きの傾向に合わせて使い分けるのが良い、ってオチになるのか('ε`)
----
未確認だけど、キーのある時刻のEnvelopeを見てるのか、Channelを見てるのかItemInfoを見てるのか、という点も要確認かもしれない。
キーを走査しておきながら、わざわざItemInfoを見る事は無いだろうけど、Newtekならありえるしw
この記事へのコメント