比較バージョン

キー

  • この行は追加されました。
  • この行は削除されました。
  • 書式設定が変更されました。

An Agent type is a specialized Simulation event describing an agent definition. It contains a skeleton, proxy and skinned geos. It has a scale multiplier and can be linked to a State machine.
Atoms Crowd provide tools for exporting the necessary files to define your agent types.

Image Removed

Skeleton

Users can create the agent type skeleton in their favorite 3D package (i.e. Maya, Houdini, etc.) with a hierarchy of joints/bones.
The body skeleton should live under one main root, but you can also have detached joints or hierarchies. These should be added as extra (prop) joints when exporting the skeleton.

In order for a skeleton to work in Atoms, users have to tag the following joints: any pelvis joint, any foot root (the first joint of a leg), any foot ik (the IK handle) and any foot tip.
For a biped, you'll have one pelvis, two foot root, two foot iks and two foot tips.
Atoms needs these information to place correctly your agents on the ground and apply the foot lock during the simulation. 

注意
Your skeleton root must always be tagged as a pelvis.

Proxy geo

A proxy GEO is a set of low poly geometry that will be used by Atoms when showing your agents in "mesh" mode.
In order to associate a geometry with a joint, users will have to name each piece of geo with the name of the joint followed by "_GEO" (see picture).
Please check the tutorial section to know how to name your proxy GEO.
注意

All your proxy GEO should live under the same parent, although the hierarchy does not have to be flat.

Image Removed

Skinned geo

The skinned GEO can be single or multiple meshes skinned to the skeleton. At export time all the meshes, skin weights, UV and textures are saved inside the skinned GEO definition file.
注意
All your skinned GEO should live under the same parent, although the hierarchy does not have to be flat.

State machine

For every agent type you can link a state machine. During the agent creation stage, the state machine module uses this name to build the linked state machine.

Agent scale

This value is a multiplier on the global scale of the skeleton. The pelvisHeight, footHeight, velocity metadatas are affected by this value.

Retargeting

The retargeting section can have a single or multiple retargeting agent types. This agent type is mapped to the given agent types with a retargeting method and an optional config map file containing a map of joint names.
The retargeting method is used for evaluating a scale factor used while animation clips are being read:

  • Pelvis To Feet: the factor is calculated as the ratio of the Y values of the average distances between the main pelvis and foot tips.
  • Bounding Box: the factor is calculated as the ratio of the Y values of the skeleton bounding boxes.
  • User Factor: provided by the user.

Draw Optimization

Atoms Crowd supports automatic level of detail (LOD) where the geometry of your agent type will be simplified at run-time.
Users can have 3 level of details and decide a mode between "Camera Distance" and "Screen Area" (the geo will be simplified based on the area the agent will use in screen space).
The two values for each LOD are the number of levels of simplification and the second is the camera distance or screen area (depending on the mode) value.エージェントタイプは、エージェントの定義を説明する特殊なシミュレーションイベントです。Skeleton、Proxy、Skin geoを含みます。これは、スケール乗数を保有し、State Machineにリンクすることができます。
Atoms Crowdは、エージェントタイプを定義するために、必要なファイルをエクスポートするためのツールを提供しています。

Image Added

Skeleton

ユーザーは、ジョイント/ボーンの階層を有する、ユーザーのお気に入りの3Dパッケージ(例えば、Maya、Houdiniなど)内にエージェントタイプのスケルトンを作成することができます。
ボディスケルトンは、1つのメインルートの下に配置する必要がありますが、独立したジョイントまたは階層を保有することもできます。スケルトンをエクスポートする場合は、これらは追加の(Prop)ジョイントとして加える必要があります。


スケルトンをAtomsで機能させるには、ユーザーは次のジョイントにタグを付与する必要があります。pelvisジョイント、foot root(脚の最初のジョイント)、foot IK(IKハンドル)、およびfoot tip。
二足歩行の場合は、pelvis(骨盤)が1本、foot root脚の(根元が2本)、foot IK(脚が2本)、foot tip(足先が2本)あります。

Atomsは、エージェントをグラウンドに適切に配置し、シミュレーション実行中にフットロックを適用するためにこれらの情報を必要とします。

注意
ユーザーのskeleton rootは、常にpelvisとしてタグ付けされる必要があります。


Proxy geo

Proxy geoは、エージェントを「mesh」モードで表示する場合に、Atomsによって使用される一連のローポリジオメトリです。
ジオメトリをジョイントに関連付けるには、ユーザーはジオの各部分にスケルトンのルートを付与する必要があります。また、必ずpelvisとしてタグを付けする必要があります。
ジョイントの名前の後に "_GEO"が続きます(写真参照)。

ユーザーのプロキシをGEOと命名する方法について詳細を確認したい場合は、チュートリアルセクションを参照してください。

注意

ユーザーの全てのProxy geoは同じ親の下に存在するべきですが、階層はフラットである必要はありません。


Image Added

Skin geo

スキンを適用したジオは、スケルトンをスキンに適用した単一または複数のメッシュにすることができます。エクスポート時には、すべてのメッシュ、スキンウェイト、UV、テクスチャはスキンされたジオの定義されたファイル内に保存されます。

注意
スキンが滑らかである必要はありませんが、スキンされたすべてのジオは同じ親の下に配置される可能性があります。


State Machine

すべてのエージェントタイプに対して、ステートマシンをリンクすることができます。エージェント作成段階では、State Machineモジュールはこの名前を使用してLink State Machineを構築します。

Agent scale

この値はスケルトンのグローバルスケールの乗数です。 pelvisHeight、footHeight、velocityメタデータはこの値の影響を受けます。

Retargeting

リターゲティングセクションは、単一または複数のRetargeting Agent Typeを有することができます。このエージェントタイプは、リターゲットメソッドとジョイント名のマップを含むオプションのConfig Map Fileを使用して、指定されたエージェントタイプにマッピングされます。

Retargeting Methodは、アニメーションクリップの読み込み中に使用されるスケールファクタを評価するために使用されます。


  • Pelvis To Feet:この係数は、メインとなる骨盤と足先までの間の平均距離をY値の比として計算されます。
  • バウンディングボックス:ファクタは、スケルトンバウンディングボックスのY値の比率として計算されます。
  • ユーザー係数:ユーザーによって提供されます。

Drawの最適化

Atoms Crowdは、実行時にエージェントタイプのジオメトリが単純化される自動詳細レベル(LOD)をサポートしています。
ユーザーは3つの詳細レベルを保有することができ、「Camera Distance」と「Screen Area」の間でモードを選択することができます(ジオは、エージェントがスクリーンスペースで使用する領域に基づいて単純化されます)。


各LODの2つの値は以下のとおりです。

  • 簡易化のレベル数。ジオを簡易化するための反復アルゴリズムは、反復ごとにポイントの25%を削除します。
  • カメラの距離または画面領域の値(モードによって異なります)。

Preview

Preview Widget Displayには、選択したエージェントタイプのスケルトンが表示されます。下部には、ジョイントサイズを変更するためのコントロールがあります。
ジョイントはタグによって色分けされています。

  • グリーン: pelvis ジョイント
  • シアン: foot root ジョイント
  • レッド: skip ik ジョイント
  • ピンク: foot ik ジョイント
  • イエロー: foot tip ジョイント


ビューポートを右クリックすると、以下のオプションを含むメニューが表示されます。

  • Draw grid:ビューポート表示のグリッドを有効/無効にします。
  • Draw Joint Axis:ディスプレイのジョイント軸を有効/無効にします。
  • Draw Skin Mesh:スキンメッシュの表示/非表示を切り替えます。
  • Draw Joint Names:ジョイント名の表示/非表示を切り替えます
  • Lock Camera:カメラのロックを有効/無効にします。
  • Reset Camera:カメラの移動/回転をリセットします。


ナビゲーションコントロール

  • Alt +左​​クリックしてドラッグ:カメラを回転
  • Alt +中クリックでドラッグ:カメラをパン
  • Alt +右クリックしてドラッグ:ズームカメラ