horsetail bbs
[記事リスト] [新着記事] [ワード検索] [過去ログ] [管理用]

タイトル Re^3: 追伸
投稿日: 2008/01/06(Sun) 18:41:14
投稿者koi

はじめまして。

あけましておめでとうございます。
返事が遅くなり申し訳ございません。

FBXエクスポータのボーンプラグイン対応については、
もう少し完成度が上がった際にmqdl様にご連絡差し上げようと思っていました。

「1)」については、こちらでも当初デバッグバージョンではうまく動かず、少々悩みました。

「2)」についてですが、あれば便利というものを書かせていただきます。

・ボーンの親子付けについて
ボーンの親子関係を作成するには、親が誰であるかを見るしか方法が無いと思われます。
親から子へアクセスする手段などがあれば、便利なのではないかと思います。
※FBXのノード(ボーンプラグインでいうボーン、KFbxNode)では
KFbxNode* KFbxNode::GetParent();
int KFbxNode::GetChildCount();
KFbxNode* KFbxGetChild(int index);
という親子アクセス関数があります。

・ボーンの初期状態に関して
現在、ボーンのローカル変換の初期状態(回転や移動)についてはPivotから計算して求めています。
これを、ボーンプラグイン側から取得できると便利だと思います。

・線でつながれているボーンの扱いについて
現在、ボーンの親子関係が、線でつながっているのか、
点でつながっているのかを判断するのは、Pivotを見るしかないので、
それを判断できるようなインターフェースがあると便利かと思います。
※線のところにもスケルトンを入れたい場合などに使用するかと思います。

・アニメーションについて
FBXでアニメーションを出力する場合、回転値はオイラーで出さなければなりません。
ですので、現在キーフレームのクオータニオンの値をオイラーに変換して出力しています。
FBXはオイラーでの補間を前提としており、X、Y、Zの回転値をそれぞれ補間します。
この場合、ボーンプラグインで作成したアニメーションを、
FBXを介して他のツール(例えばXSI MOD Tool等)で再生すると、
意図したものと異なる場合があります。
これを避けるために、アニメーションをベイク(1フレームごとに値を書き込む)します。
この処理を実行する際に、ボーンプラグイン側のクオータニオンの補間結果を取得できると便利だと思います。

以上、あれば便利程度のものですが、ご検討よろしくお願いいたします。


- 関連一覧ツリー (▼ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)
おなまえ
Eメール
タイトル
メッセージ   手動改行 強制改行 図表モード
メッセージには上記と同じURLを書き込まないで下さい
URL
暗証キー (英数字で8文字以内)
  プレビュー

- 以下のフォームから自分の投稿記事を修正・削除することができます -
処理 記事No 暗証キー