To export your animation correctly the animated skeleton joints will need to have all the tags we set up when we exported our Agent Type files. The joints need also to have the "bind pose attributes" set correctly.
For this reason, we are going to start this task by opening the scene you saved when exporting the Agent Type files. You can also open directly the AtomsRobot.ma scene as it has all the attributes already set correctly.
Once you've loaded the file, we are going to import the atomsRobot_walk.fbx file from teh data folder.
At frame one your robot should look like in the picture.
The Animation Exporter Tool
You can open the skeleton and animation exporter tool using the shelf button or the menu. You can also open it via the Atoms menu: それでは、Atoms Crowdで使用できるようにアニメーションをエクスポートする方法を見てみましょう。
アニメーションスケルトンジョイントには、アニメーションを正しくエクスポートするために、Agent Typeファイルをエクスポートした時に設定した、すべてのタグが必要です。ジョイントにも「Bind pose attributes」を正しく設定する必要があります。
このため、Agent Typeファイルをエクスポートする時に保存したシーンを開いて、この作業を開始します。 AtomsRobot.maシーンは、すべてのアトリビュートがすでに正しく設定されているので開くことができます。
ファイルをロードしたら、データフォルダーからatomsRobot_walk.fbxファイルをインポートします。
注意 |
---|
確認してください。
|
注意 |
---|
スケール補正は、サポートされていません(Mayaのように)。ジョイントをスケールすると、そのすべての子もスケールされます。 |
Animation Exporter Tool
シェルフボタン、またはメニューを使用して、スケルトンとアニメーションのエクスポートツールを開くことができます。 Atomsメニューから開くこともできます:
Atoms > Export > Skeleton / Animation Exporter
The Skeleton Exporter GUI will pop up. Make sure to select the "Animation" tab at the top of the GUI.
The worflow here is pretty similar to exporting skeleton and mesh definitions.
You'll have to select your Skeleton ExporterのGUIがポップアップします。 GUI上部の「Animation」タブを必ず選択してください。
ここでのワークフローは、スケルトンとメッシュの定義をエクスポートすることと、よく似ています。ユーザーの "Root Joint", the 、 "Hip Joint" joint.
Then select the file type for your animation. Currently Atoms supports fbx and atomsclip. While FBX are more portable, atomsclip is more optimized to work with Atoms.
Then select a file path.
Now the "ground height". Atoms needs to know when the feet of your clip are touching the ground. The "ground height" field tells the exporter what is the height of the virtual plane your clip is walking on.
If your clip has the feet travelling above the XZ plane and when they are touching the ground a value of 0 for the ground height is acceptable.
In our case unfortunately it is not. The robot feet are constantly moving below the XZ plane.
We are going to find the right ground height for the RightToeBase joint. First we need to find a frame where the foot is down, any frame between 22 and 34 will be fine (scene should be set to 30fps).
Then you can create a locator or a plane and move it from the front camera until it approximately matches the foot tip of your right leg, the RightToeBase joint. The value you're looking for is the Y axis translation of your locator/plane. In this case a value of -76 will be fine.
The "foot threshold" is error approximation value for your ground height. In this case a value of 0.5 will be fine.
We'll come back to the "foot down from scene" later in this page.
Finally the "Images" section. You can export a thumbnail preview with you clip. This is extremely useful later on when setting up your animation clips. If you decide not to export a thumbnail preview just uncheck "Export images".
Please place the "source camera" in a way it can record the entire animation. You could even point constrain it to the "Hip" joint.
When "Export images" is on a tar file containing the the preview images will appear in the same folder of your clip file.
PLEASE NOTE: The exporter will use your time slider start and end frame as frame range. For this example you should set it to 0-123.
Checking your clip
Now let's import the fbx we just exported on our scene, select our RightToeBase joint and open the graph editor.
By selecting the "Atoms Foot On Ground" attribute, you should see something like this.
This attribute holds the data that represents our "foot down" state for this foot. If you scrub the time slider while checking this animation curve and the robot animation, you'll see at frame 76 that the foot is not actually down.
Selecting the keyframe at frame 76 and set its value to 0.
The same attribute for the LeftToeBase joint has also a spike at frame 122. Fix that too.
Now we are ready to export once again. Open the Skeleton Animation Exporter and tick the "foot down from scene" checkbox. Make sure all the values of the GUI are exactly the same you used for exporting your clip previously.
Now click export.
If you check your clip again, your feet should be fine.
PLEASE NOTE: it is not currently possible to import an atomsclip file by importing it on your rig. You can do it in the Atoms UI.を選択する必要があります。
次に、アニメーションのファイルタイプを選択します。Atomsは現在、fbxとatomsclipをサポートしています。 FBXは、より移植性がありますが、atomsclipはAtomsと連動するように最適化されています。
ファイルパスを選択します。Ground Methodを「User Value」のままにします。
現在の「Ground Height」。クリップのフットが地面に接触していることを、Atomsは把握する必要があります。「Ground Height」フィールドは、クリップが歩行している仮想平面の高さをエクスポータに伝えます。
クリップのXZ平面の真上を移動するフットがあり、地面の高さとして0の値が許容される場合です。
今回の場合は、残念ながらその通りではありません。ロボットのフットは、常にXZ平面の下を移動しています。
RightToeBaseジョイントの正しい地面の高さを見つけます。最初に、フットが下がっているフレームを見つける必要があります。22から34までのどのフレームでも大丈夫です。(シーンは30fpsに設定する必要があります)
次に、ロケーターまたは平面を作成し、それを正面のカメラから右足の足先であるRightToeBaseジョイントに、ほぼ一致するまで移動します。ユーザーが探している値は、ユーザーのロケータ/平面のY軸移動です。この場合、-76という値で問題ありません。
「Foot Threshold」は、地面の高さに対する誤差の近似値です。この場合、0.5の値で問題ありません。
このページの後半の「Data from scene」に戻ります。
最後に、「Images」セクションです。クリップと一緒に、サムネイルプレビューをエクスポートできます。これは、後でアニメーションクリップを設定する場合に、とても便利です。サムネイルプレビューをエクスポートしない場合は、「Export images」のチェックを外してください。
アニメーション全体を記録できるように「Souce camera」を配置してください。ユーザーは、それを「Hip Joint」にコンストレイントするように命じることができます。
プレビュー画像を含むtarファイルに「Export images」がある場合は、クリップファイルと同じフォルダに表示されます。
注意 |
---|
キャラクターを地面でアニメートした場合でも、アニメーションをエクスポートできます。Ground Methodを "Mesh"に変更して、フットのしきい値を指定します。 |
注意 |
---|
エクスポーターは、タイムスライダの開始フレーム、終了フレームをフレーム範囲として使用します。この例では、0から55に設定する必要があります。 |
注意 |
---|
ルートぺルビスジョイントに「atomsClipDirection」というベクトルタイプのアトリビュートを追加することで、エクスポートする前にクリップの方向を設定できます。 |
Clipを確認する
それでは、シーンからエクスポートしたばかりのfbxをインポートし、RightToeBaseジョイントを選択してグラフエディタを開きましょう。
「Atoms Foot On Ground」アトリビュートを選択すると、最初の図のようになります。
このアトリビュートは、フットの「Footdown」状態を表すデータを保持します。このアニメーションカーブとロボットアニメーションを確認しながら、タイムスライダをスクラブすると、カーブのキーフレームがフット下の状態をよく反映していることがわかります。
2番目の図のような場合は、フレーム60と80の間にスパイクがあることが確認できます。この場合は、手動でそのキーフレームの値を設定してから、Skeleton Animation Exporterを開き、「Data from Scene」をチェックします。チェックボックスのGUIでエクスポートした後、もう一度クリップをチェックすると、Foot on ground アトリビュートは問題ないことが確認できます。
注意 |
---|
Footdown Curvesを編集した後に、FBXを手動でエクスポートしないでください。他のいくつかの値(エクスポート時にキャッシュ)は、エクスポートする度に再評価されます。 FBXを手動でエクスポートすると、予期しない結果が生じる可能性があります。 |
注意 |
---|
現在、mayclにatomsclipファイルを直接インポートすることはできません。 Atomsclipファイルは、Atomsでのみ使用されるべきです。 |