============== BVH format ============== BVHには、座標付きのジョイントの木構造が入っているので棒人間を作ることが可能だ。 続いて、全フレームのモーションデータが入っている。 * HIERARCHY * JOINTの木構造 * CHANNELS * Frames: Frame数 * Frame Time: 1フレームの長さ(秒) * MOTIONのリスト JOINTの木構造 ============= 末端のジョイント(子ジョイントを持たないジョイント)を抜き出した。 BVHにコメントは無いが説明のため追加している。 :: JOINT Head { // 親Jointの位置からの相対位置 OFFSET -4.89547e-013 3.97043 0 // このジョイントが持っている動作チャンネル // 基本的にルートジョイントのみが移動チャンネルを持ち // 他のジョイントは回転チャンネルのみをもつ。 // 回転はオイラー角で表現。 // チャンネルの出現順にも意味があるかもしれないが決めうちでよさげ。 CHANNELS 3 Zrotation Xrotation Yrotation // この下に子ノードを持たない場合はEnd Siteがあらわれ、子ノードを // がある場合は入れ子になったJointが続く End Site { OFFSET 0 9.26433 3.17104e-007 } } CHANNELS ============= MOTION ======================== 各ジョイントのチャンネルの状態を木構造での出現順に羅列したもの。 :: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0