乗り物チュートリアル 04
ヒトの次にバイクをインポートします。なお、このページではMOD作成支援スレの住人様によるサンプルのバイクMODを使用します。NR500を使う場合は作業工程が増えるので、違うページで解説します。
ショートカットキーの説明のページを作ってみました。一切読まなくても進められるように説明はしています。
Blenderにバイクをインポート
ヒトとバイクのインポートは必須ではないのですが、もちろんあったほうがわかりやすいのでインポートします。これから作るものはあくまで「ヒトとバイクの"動きのみ"を記録したデータ」であり、ここでインポートするnifデータは単に制作中にそれらが見えて作りやすくなるというだけで、完成物には影響しません。
メッシュに埋れているSkeletonを表示する
バイクのインポートの前に、メッシュをインポートしてスケルトンが見えにくくなってしまっているのでこれを見えるようにします。

まず見えているスケルトン(カカシ)のどこかを右クリックして選択、次に下に並ぶパネルの右から2番目のEditingをクリック、Armatureの中のEditingOptionsに「X-Ray」というボタンがあるのでクリックします。するとスケルトン全てが表示されるようになります。
バイクをインポートする

再びスケルトンを右クリックして選択、「File > Import > NetImmerse/Gamebryo(.nif & .egm)」で「ups19746.zip」の中にあった「MarkerBike.nif」を選択してインポートして下さい。設定はヒトのインポートの時と全く同様です。
成功すると、サンプルの赤いバイクが表示されます。ヒトとバイク両方が地面に埋まってしまっていますが、これはMOD作成支援スレの住人様によると以下の理由からだそうです。私には細かい話はわかりません…。
全体の位置が下にズレるのはゲームでの表示の辻褄併せにバイクnifの「SceneRoot」に
Bip01SpineBとの位置が合う様に暫定的にその値が書いてあるからです。
使われる環境によって座標や位置がズレることがあり、その修正のために今回のような作業が必要になります。
スケルトンを右クリックして選択し、<g>→<z>の順に押して、Z軸方向に5.0移動します。数字キーやテンキーからの入力でOKです。ちなみに<->(マイナス)で+と-をトグルできます。
バイクにWeightをつける
現状ではヒトとバイクがバラバラに動いてしまうので、「Weight」というものをつけてヒトの動きにバイクが追従するようにします。
私も詳しい話まではわかりませんが、WeightはあるBone(部位)から他のBoneに対して0%〜100%(0%で全く追従しない、100%でそれと完全に一緒に動く)まで設定できます。そしてそれぞれのBoneのWeightの合計は必ず「100%(1.0)」でないといけないようです。Oblivionではムリだと思いますが、髪の毛に1本1本にもしもWeightを細かく設定出来れば、風に自然になびくモーションが作れるのかも知れません。(完全に余談)
Weightをつけるために、まずはバイク全体を選択します。1つのバイクのパーツを右クリックで選択して、続けてシフトキーを押しながら右クリックしてバイクの全てのパーツを選択してください。バイク全体だけが選択されたら、同じくシフトキーを押しながら今度はスケルトンを右クリックしてスケルトン全体も選択されている状態にして下さい。

次に<Ctrl+P>を押すと「Make Parent To」と出るので「Armature」をクリック、続いて「Create Vertex Groups?」と出るので「Name Groups」をクリックして成功です。複数指定でやったので何度もダイアログが出ると思いますが、全て同様にやってください。
これで最後に選択されたスケルトンがバイク全体の親になりました。

そうしたら「Frame」だけを選択して、Tabキーを押すか、下のパネルから変更してEdit Modeにします。するとバイクの辺が黄色になって全体が明るくなった思いますが、それが全選択状態です。念のため、何度か<a>を押して全選択になっているか確認して下さい。
全選択にしたら、下に並ぶパネルの右から2番目のEditingをクリックし(<F9>キーでも可)、下に並ぶボタンの「Link and Materials」の「Vertex Groups」が「EntryPoint」になっているのでこれを「Bip01 SpineB」にします。これで「Bip01 SpineB」に追従して動くことになります。残りのバイクのパーツも同様に変更してください(他のパーツを選択するときは一度Object Modeに戻して下さい)。
確認として、スケルトンを選択した後、下のメニューからPose Modeにして、足の近くにある「Bip01 SpineB」を選択して<g>で移動してみてください。バイクも一緒に動けば成功です。逆にヒトだけ動かす場合は、そのすぐ下にある「ActorParent」や「Bip01」や「Bip01 Pelvis」などで移動すればOKです。
以上でバイクの設定は終わりです。後は普通にポーズやアニメーションをつけていくことができます。
ちなみに、ここで行ったWeight付けはBlender上でバイクをヒトに追従させるためのものであり、この工程の有無はこれから作るkfファイルに全く影響しません(作業のしやすさには影響します)。
ゲーム上でのWeightの設定は、nifファイルの設定によってあらかじめ行われています。Boneの連動には「Skinアニメ」と「Objectアニメ」の2つがありますが、このバイクMODでは後者が使われています。