BACK TO TOPPAGE
付属のサンプルを用いたTutorial
STEP 1:データのコンバート及び読み込み
1.付属のcylinder.mqoをメタセコイアで開く。
2."skin"オブジェクトのみを可視状態にし、「ファイル>名前をつけて保存>Direct3D Retained Mode(*.x)」
を選び、"cylinder.x"として保存する。ここで、
・倍率:0.0100 x 0桁
・座標軸:Direct3D
・「左右を反転する」にチェックを入れる
としなければならない(コンバータがヘボいせいです、ごめんなさい)。
おそらく上記の設定はMetasequoiaでのXファイル出力ではデフォルトになっているはず。
3.付属のConvertBoneData.exeを開き、File>Openを選び、cylinder.mqoを読み込む。
4.読み込んだら、Save As>*.datを選び、cylinder.datとして保存する。
5. EditAnimation.exeを実行、Open Data>Meshを選び、cylinder.x及びcylinder.datを読み込む。
(ダイアログが連続で現れるので、順次ロードする)
この時点で画面にメッシュが表示される。右ドラッグで視点を回転、左右同時押しドラッグで
ズームイン、ズームアウトする。
STEP 2:データの加工
1.Boneダイアログにおいて、編集したいボーンを選択する。
"+"のマークをクリックすると、下の階層のボーンが現れ、選択可能になる。
2.Parametersダイアログにて、選択したボーンのパラメータを設定する。
・H,Rパラメータはそれぞれボーンの軸に平行、垂直な距離であり、単位は選択した
ボーンの長さに対する比率である(つまり1.0でボーンの長さと同じ距離となる)。
例えばHパラメータが0.25の場合、ボーンの軸に平行な方向でのウェイト値は、
ボーンの始点(終点)から0.25*(ボーンの長さ)だけ離れた点で0になるように減衰する。
Rパラメータも同様であるが、ボーンの軸に下ろした垂線からの距離に応じて減衰する。
・Symmetric Boneパラメータは、選択したボーンと対称の関係になるボーンを指定する。
これを指定すると、AnimationダイアログのInverseボタンを押す事で、選択したボーンと
対称関係のボーンの姿勢を、YZ平面に関して対称に変換して入れ替える事ができる。
元のモデルをYZ平面に関して対称にし、Rootとなるボーンの原点をX = 0に配置するとわかりやすい。
サンプルのcylinderについてはb1(1)とb2(3)を、b1-1(2)とb2-1(4)を対称に設定すると良い。
ボーンの名前の隣にカッコ付きでついている番号がそのボーンを表すインデックスとなっており、
Symmetric Boneパラメータに設定する値は、この番号となる。
これを設定した状態で各ボーンを適当に回転させ(Bone Controlダイアログ)、Animationダイアログの
Inverseボタンを押してみると、その効果が確認できると思う。
3.必要ならば頂点単位で頂点ブレンディングの重みを設定できる。
マウスの左ドラッグで現れる領域に編集したい頂点が入るように選択し、Weight Controlダイアログにて
適用させるボーンのインデックス(左のコンボボックス)とウェイトの値を設定する。
SHIFT+左ドラッグで追加選択、CTRL+左ドラッグで選択解除が可能。
なお、複数の頂点を選択し、AnimationダイアログのChooseボタンを押すと、コンボボックスで指定している
4つのボーンインデックス番号を含む頂点だけが選択されるようになる。
例えばメッシュの頂点を全て選択した状態で、ボーンインデックスが1,2,0,0の場合、Chooseを押す事で
1と2の影響を受ける頂点以外の選択は解除される。
STEP 3:アニメーションの作成
1.Boneダイアログにおいてボーンを選択し(STEP 2の1.を参照)、Bone Controlダイアログにて
キーフレームにおける姿勢を決定する。これを全てのボーンについて行う。
2.キーフレームを追加したい時間をAnimationダイアログのスライダ上で決定し(単位は1/60秒、以下これを
1フレームと呼ぶ事にする)、Addボタンでキーフレームを追加する。
(注意:最初のキーフレームがTime = 0に無い場合の動作は特に記述してない。)
起動時はスライダ上の時間の範囲は0〜60フレームとなっているが、範囲外にある場合はスライダ下の
-5、+5ボタンで範囲を変更できる。
さらにSTEP 2において対称となるボーンを設定していれば、Inverseボタンにて姿勢を反転させることができる。
これらを追加したいキーフレームの数だけ繰り返す。
3.キーフレームの追加が終わったらPlayボタンを押すと、アニメーションが再生される。
もう一度押すと、停止する。
なお、ループするアニメーションの場合は、最後のキーフレームを最初のキーフレームと同じものとすれば
綺麗にモーションがつながる。(最後のキーフレームに到達すると、次はTime = 0ではなくTime = 1に移動する)
STEP 4:スキンメッシュ及びアニメーションのセーブ
メニューのFile>Save DataからSkinnedMeshおよびAnimationを選べばよい。
ちなみにParameters、Bone Dataを選ぶ事で、STEP 2で設定したパラメータ等も保存できるが、
BoneDataはこのソフトでの読み込みは実装されていない(自作外部ソフトで使う為のものとして実装)。
BoneDataファイルの解説についてはこちら
なお、上記のリンク先でも触れているが、SkinnedMeshで保存する際に、.skm方式で保存すれば、頂点ごとに
変更したウェイト情報も含めて、全てこのソフトで読み込む事ができる。
データの作り方等の詳しい事項については後日改めてアップロードする予定です。
BACK TO TOPPAGE