2008年7月18日金曜日

viewer - 進歩状況

viewer関係は、完成までこの日のに書き加えていく感じで書いていきます。。
誰の役にも立たない気がしますが、メモ代わりに・・。

・ShapeKey
個人的に、ある程度できるようになったら説明書読まずに突っ走るタイプなので、ShapeKeyはIPODriver使わずに手打ちでやってました。それで、以前その手打ちのShapeKeyのIPOを出力するようにしてたんですが、当然IPODriver使った場合、ShapeKeyのIPOには、まともな値が入っていません。IPODriver使用したものを普通のIPOに変換する方法ってないですかねー。(pythonスクリプトとかじゃなくて、普通の機能で。)少し見た感じ無さそうなので、次はコードの山から発掘を試みます・・・。

・NLA

アニメーションはド素人なのでNLAStripなるものを使ったことが無くて、3Dキャラクターアニメーション本を片手に、内部のデータ解析中です。こんなアイコン(画像)誰も押そうと思わないだろ、常識的に考えて・・・。

複数アニメーションの出力で、Actionを片っ端から全部出力すればいいじゃんと思ってましたが、Actionつーのには、対応するArmatureの情報が入ってないのです。だからあるArmatureで作ったActionを他の形も名前も全然違うArmatureにすんなり適用できたりします。なので、この方法は使えません。色々考えた結果、ArmatureからリンクされてるActionとNLAにリンクされてるActionのみ出力することに。


↑とりあえず出力した。ぱっと見、start/end、blendin/out、repeat、scaleくらいを何とかしないといけないっぽいな・・・。

7/19(土)
NLAのコンバートさくっと終了。以前と比べて、エクスポーターとコンバーターは割とすぐ出来るようになって、予想通り問題ドメインがビューワー自体に移ってきた。完成に近づいている良い傾向。

エクスポーターとコンバーターを分けたのも、一見遠回りに見えるけど、多分分けてなかったらここまで出来てないだろうな。アプリケーション単位でFacadeパターンしてる感じ。

7/20(日)

どーん。
テスト勉強で何も進まず。
worldのhorizonを背景になるようにしたりとか、メモリリーク直したりとか、細かい修正のみ。

7/22(火)
いい加減、片っ端からCtrl-Tで三角形に変換するのがウザくなってきたので、コンバーターで四角形を三角形に自動変換するようにした。

NLA、上の画像にあるように、アクションモードとNLAモードがある。つまり、1つ1つのアクションを全部出力してviewer側でブレンドする方法と、全部まとめて1つにしたブレンド済のものを出力する方法がある。
前者は、1つ1つ個別に再生できるけど、再生時にブレンドするが面倒。後者は、再生が楽で早いけど、個別再生が出来ないし、作り方によってはキーが結構増える。
エクスポーターで両方出力して、コンバーターでどの方法使うか選ぶのが最適解なのかな。どちらかというと、前者のほうが良さそうなので、とりあえず前者で行こうか。

7/24(木)
アクションモードの出力変換読込み再生いけた。ただ、再生時のブレンドとrepeatがまだ。
アクションモードでストリップを右クリックしたときの選択動作の解析が少し面倒だった。
普通に右クリックイベントが起こったときの関数呼び出すと、再描画が含まれて遅くなるから、うまく中身だけ反映させないといけなくて。
あと来週の火曜から夏休みなので、加速度上げていきたい。

0 件のコメント: