Gmaxでのアニメーション設定とFSXへのインストール (私的備忘録) Oct.2013〜

 一口にアニメーションと言っても、Gmaxでのアニメーションには、下に挙げたように幾つかの段階があります。簡単なAの方法だけで済む場合も多いのですが、リアルな形の人形を歩行させたりしようとするとD難度の方法が必要になります。

 A.オブジェクトの回転、移動といった単純なアニメーション。
 B.連結された複数オブジェクトが折れ曲がりながら動く、連結列車やムカデのような動きのアニメーション。(boneを併用する。)
 C.連結された3つ以上のオブジェクトが関連を持ちつつ折れ曲がりながら、人間の歩行のような動きをするIKアニメーション。
    (IK=インバースキネマ技法を使う。)
 D.boneとskinを使って作るアニメーション。IKを併用することも多い。


A.のアニメーションの設定方法

  ・アニメートするオブジェクト(物体)のみが存在するbglを作ると、FSX内で飛行機の位置やヘディングによっては、アニメートする物体が見えなくなる。
   よって、必ず一つはアニメートしないダミーのオブジェクトを、どこか見えない場所におくか、あるいは小さな立木の一つでも作っておいてやるとうまくいく。
  ・もしオブジェクトが2個以上の部品(部分)からから作られている時は、あらかじめ各部品(部分)を、リンクツールで順番にリンクさせ
   ておいてから、アニメーション設定に入る。リンク元(親オブジェクト=一番最後にリンクした部品)がどのパーツか覚えておくこと。
  ・アニメーションを設定する時は「Animate」ボタンを押して設定モードにするのを忘れないこと。終わればボタンを再度押す。
   何回か設定し直している内に「Animate」ボタンを押し忘れてオブジェクトを動かしていると、結果として思わぬ動きをしてしまい、何が
   何だか分からなくなってくる。
  ・オブジェクトを選択(リンク元の部品のみで構わない。)してアニメーションボタンを押し、タイムラインフレームを5とか10とかずつ先
   に進めてから、物体を移動(回転)させる。
     タイムラインは「フレーム」でも「実時間」でも選択できる。(画面右下のTimeConfigurationボタンを押してTimeDisplayをMM:SS:TICK;
     にすれば「実時間」でのアニメーション設定になる。)
   この手順を繰り返して、0フレーム(0秒)から最終フレーム(最終秒)までの移動(回転)を設定完了する。
  ・再度「Animate」ボタンを押して、アニメーション設定モードから抜ける。
  ・右下にあるアニメーション実行ボタン(>)を押して、アニメが狙い通りの動きをするか確かめる。

  ・FSX内でも設定通りにアニメートさせるために、アニメーションマネージャーで以下の手順を実行する。
  ・アニメーション設定を「実時間」でやった場合でも、ここで「フレーム」に戻しておく。(画面右下のTimeConfigurationボタンを押して
   TimeDisplayをFrameにする。)
  ・アニメートするオブジェクトを選択する。
    (幾つかのオブジェクトをリンクしてある場合は、「親オブジェクト」を選択する。)
  ・Gmaxのメニューバーの、1番右にある(はずの)「FSTools」メニューから、「AnimationManager」を実行する。
  ・Groups=ALL 、 AnimationList=Ambient 、を選択。
   1つのbglに納めるための、2つめのアニメーションオブジェクトなら「Ambient2」を選択。
  ・Startの欄にアニメーション開始フレーム値(=0)、End欄に終了フレーム値を入力。
  ・Createボタン(右下のではなく右中あたりにあるもの)を押し、ObjectAnims欄にAmbientの表示が出たことを確認。

 以上が設定手順であるが、この後は通常のように、GUID値設定後、FSX用にMDL形式へのexportを行い、コンパイルする。


B.のアニメーションの設定方法
  ・(重要)・アニメートするオブジェクト(物体)のみが存在するbglを作ると、FSX内で飛行機の位置やヘディングによっては、アニメートする物体が見えなくなる。
   よって、必ず一つアニメートしないダミーのオブジェクトを、どこか見えない場所におくか、あるいは小さな立木の一つでも作っておいてやるとうまくいく。

 3個の部品を連結して動かす例題
・3個の部品を通常通り作成してからbone作成に入る。
・メニューの Animation -- Create bones を選択して、bone作成モードにする。
・部品の近くで左クリックをしてから、部品の大きさに合わせてマウスを移動させてboneを作成。
・ちょうどいい大きさのところで左クリックをすると、2個目のboneの描画が開始される。
・同じようにして3個のboneまで描き終えたら、右クリック。
  (付属に4個目の小さなおにぎりの様なboneも出来るが、アニメーションの動きを設定する際に必要なもの。 最終段階では消去する。)
 これで3連結されたboneが作成される。

・作ったboneのそれぞれを、移動ツール(Select and Move)で動かしてみて、3連結されたboneがどういう動きをするか確認しておく。

←--- 3個のboneを、作り終えたところ。少々の寸法違いは次のようにして修正する。

←--- boneを部品内部に納める

・作成したboneを、部品の内に納めるように移動。
 (1個目のboneをダブルクリックすれば3個一緒に動かせる。)

・可能ならば、boneが部品の外にはみ出さないように、長さや太さを修正。
 (通常のオブジェクトのように、ModifireメニューのVertexをズームしたり動かしたりして、大きさを調整できる。)
 はみ出したままでも構わないが、アニメート作業の時に見づらいときがある。
 後に行うコンパイルが正常に行われた場合、boneはFSX画面内には表示されない。

 ・4個目にできた付属の小さなboneはアニメーションの動き設定のために必要。最後に消すので、部品の外にはみ出させておいて構わない。

←--- 部品とboneを連結(リンク)させる。

・リンク(Select and Link)ボタンを押す。
・部品の方を先にクリック選択する。 (マウスカーソルが一時的に"リンクボタンの形"になる。)
・マウスをドラッグし始めると点線が表示されるので、そのまま部品内部に納めたboneまでマウスをドラッグする。
・boneのところまでドラッグすると、マウスカーソルの形が"リンクボタンの形"に変わるので、そこでマウスのボタンを離す。(この時、boneが一瞬点滅する。)

・同じようにして3個とも部品とboneをリンクさせる。

← アニメーションの動きを付ける。

・ 基本はAのアニメーションのやり方と同じ。

・左図の場合、3個全体を移動させるのは一番左のboneを移動させながら設定する。

・左から2番目、3番目、4番目のboneをうまく動かしながら、部品を上手く折れ曲がらせる。

・全体の移動、個々の折れ曲がりを設定しながらアニメーションを完成させる。

・すべてのアニメーション設定作業が完了したら、補助的にくっついている小さいおにぎりのような4つ目のboneは消去する。消去しても設定済みのアニメーションが壊れることはない。
 あるいは、特に消去しなくてもよい。アニメーションが正常にコンパイルされた場合、これら4個のboneはFSX画面に現れないので、気にしなくて良い。

FSX内でも設定通りにアニメートさせるために、アニメーションマネージャーで以下の手順を実行する。
  ・アニメーション設定を「実時間」でやった場合でも、ここで「フレーム」に戻しておく。(画面右下のTimeConfigurationボタンを押して
   TimeDisplayをFrameにする。)
  ・アニメートするすべてのboneを選択する。
  ・Gmaxのメニューバーの、1番右にある(はずの)「FSTools」メニューから、「AnimationManager」を実行する。
  ・Groups=ALL 、 AnimationList=Ambient 、を選択。
  ・Startの欄にアニメーション開始フレーム値(=0)、End欄に終了フレーム値を入力。
  ・Createボタン(右下のではなく右中あたりにあるもの)を押し、ObjectAnims欄にAmbientの表示が出たことを確認。

 以上が設定手順であるが、この後は通常のように、GUID値設定後、FSX用にMDL形式へのexportを行い、コンパイルする。


C.のアニメーションの設定方法
 

・アームや人体のような「関節」のある動きをさせるためには、部品と同じ数の骨「bone」を設定し、その骨と各部品(部分)をリンクさせてから、さらにboneと他のboneをリンクさせて、アニメーションを設定する。
  (このやり方を一般に、IK=インバースキネマ と言うようである。)

 boneとboneをリンクさせるには、Animation -- IK Solvers -- IK Limb Solver で行う。
 やりかたは、通常のリンク機能(Select and Link)と同じ。

・基本的な動きのみならば、やってみるとそれほど難しくはない。
 bone同士をいろいろとリンクさせてみて動かしてみると、人間の歩行の脚の動きは割合に簡単に設定できることが分かる。 慣れと実験回数が物を言う。

・左の例では、太もものboneと足の甲のboneとをリンクさせて、表示されている青い十字を動かしてみると、太もも+ふくらはぎ+足の甲、の動きが一緒に起こる。
 この動きを上手く調節しながら歩行のアニメーション設定してゆく。

・これに両手の動きや腰、頭の動きも付け加えるとなると、相当に根気の要る設定になると思われる。



 作成したアニメーションの修正方法

 注意深くアニメーションを設定したつもりでも、再生ボタンを押して動きを確かめてみると、思わぬ動きをしたり位置ずれが起きていたりすることがある。
 その場合は、タイムスライダーの下にあるツールバーに見える、青い四角印を消去したり移動したりして修正をする。

・青印があるツールバーは、リンク結合体の数に応じて作られているが、左の例示のように、選択したリンク結合体のものしか表示されない。
 左の例示では、bone@の動きが記録されたツールバーが表示されている。boneAを選択すると、boneAの動きが記録されたツールバーが表示される。
 2個以上のリンク結合体がある場合は、どのリンク結合体がおかしい動きをするのか確認し、その部分を修正する必要がある。

・タイムスライダーを動かして、おかしな動きをする時間のところで止めて、その時間周辺の青四角を消去(または移動)する。
・おかしな動きの部分を正しい位置に直してから、新しい青印が作成された事を確認してから、次の位置修正に進む。
・例示したリンク結合体2個の場合、おかしな動きをする時間周辺で、両方のbone結合体の位置を確認して、正しく修正しておいた方がよい。



D.のアニメーションの設定方法 (未作成)

 部品にboneを設定し、そのboneにskinを付けていく作業になるが、skinの設定には多くの項目があるので、多くの実験をする必要がある。
 現状ではまだ、何も手を付けていない......
 このアニメーションでは、リアルな生物の見栄えが再現できるはずだが、専門家的な作業の勘も要りそうである。



Go To Site's Home Page