モデリング第七天

拠り所 なんのためにかと自問する

DirectXの挑戦

2007-09-18 21:01:55 | DirectXの研究
アニメーションの書き出しでちょっとトラブルがあったものの作業はおおむね順調。
モデル(メッシュ)の書き出しに関しては、ほぼ問題はツブしたと思うのでいずれ資料にまとめて3D班のメンバーに伝達しようと思う。
…いや、種明かしをする前にみんなにも原因究明をしてもらおうかな。
こういうトラブルの原因を突き止める作業って大切だから。
このブログでもそれなりに種明かしはしてきてるからそんなに難関ではないはず。
うん。いいかも。

目下の懸案はメッシュとアニメーションを別々のファイルにして、同一のメッシュデータに対して必要に応じてアニメーションデータを切り替えられるかどうか。
これはいまTk原君にデータを渡してあるので、そのデータを使って出来るかどうかの検証待ち。出来ないようなら、またファイルとにらめっこをする事になる。

これが出来れば、もうエクスポートに関しては何も問題はないので、あとはアニメーションパターンをひたすら作っていくだけ。

今の時点でさしあたって作ろうと思っているもの

①停止もしくは待機姿勢(基本姿勢でのループ)
②走りのループ
③走り始め(①から②へつなげるためのモーション)
④走り終り(②から①へつなげるためのモーション)
⑤立ち攻撃モーションA(立ち状態での射撃系攻撃(魔法)モーション)
⑥立ち攻撃モーションB(立ち状態での近接系攻撃(剣戟)モーション)
⑦走り攻撃モーションA(走っている状態での射撃系攻撃(魔法)モーション)
⑧走り攻撃モーションB(走っている状態での近接系攻撃(剣戟)モーション)
⑨ガードモーション
⑩ダメージモーション
⑪転倒モーション
⑫ジャンプモーション(ジャンプはどうするかな?ジャンプをつけるとジャンプ攻撃AB、ジャンプガード、ジャンプダメージのモーションもおのずと必要になるよね)

とりあえずこの辺を作れば最低限はそろうのかな?
あとは、ダミーでもいいから背景を一個作ってみよう。

…そうだな、ここまでの作業を今月中には仕上げよう。
そうすれば、来月あたまにはなんとなくゲームの片鱗のようなものが出来上がるはず。
もちろん、それはTTM君とT田君の作業が上がればの話。
上げられなかった人にはなんか罰ゲームをするようにすれば、きっと面白くなるはず。たとえば、ジュース一杯おごるとかね。

NOTHING

2007-09-18 11:12:05 | DirectXの研究
とりあえず何もないシーンを出力してみました。


xof 0303txt 0032

template XSkinMeshHeader {
<3cf169ce-ff7c-44ab-93c0-f78f62d172e2>
WORD nMaxSkinWeightsPerVertex;
WORD nMaxSkinWeightsPerFace;
WORD nBones;
}

template VertexDuplicationIndices {
<b8d65549-d7c9-4995-89cf-53a9a8b031e3>
DWORD nIndices;
DWORD nOriginalVertices;
array DWORD indices[nIndices];
}

template SkinWeights {
<6f0d123b-bad2-4167-a0d0-80224f25fabb>
STRING transformNodeName;
DWORD nWeights;
array DWORD vertexIndices[nWeights];
array FLOAT weights[nWeights];
Matrix4x4 matrixOffset;
}


Frame Frame_SCENE_ROOT {

FrameTransformMatrix {
 1.000000,0.000000,0.000000,0.000000,0.000000,
 1.000000,0.000000,0.000000,0.000000,0.000000,
 1.000000,0.000000,0.000000,0.000000,0.000000,1.000000;;
}
}


この赤字の部分はテキスト付属のファイルにも自分で書き出したファイルにもすべて記述されている。

XSkinMeshHeaderはボーン変形をスキン(メッシュ)に変換する際のヘッダ情報
VertexDuplicationIndicesはメッシュ内の頂点の重複情報
SkinWeightsは各ボーンのメッシュに対する重み情報

Frame Frame_SCENE_ROOTはシーンのルート(基準点)情報ということになる。
ここまでは共通情報でここから先、メッシュデータ(形状のためのデータ)とアニメーションデータ(動きのためのデータ)では持っている情報が何を持っているのかをサンプルと自分の作ったデータを見比べていけばいいということになる。

…な~んだ、簡単じゃん。…簡単じゃん、ははは。ふぅ。

DirectXの探求

2007-09-18 10:26:15 | DirectXの研究
今日の目標はXファイルの中身をマジメに読むこと。
F3DチームのほうではXファイルの中身をずいぶん解析してるみたいだけど、僕は僕なりに中身を読んでみようかと思う。
書き出し時の設定やらファイルやらをいじることで何が何を指しているのかを調べることができるのは僕だけだから、これはたぶん僕の仕事。