Rig タブの設定では、インポートしたモデルのメッシュにどのようにデフォーマーをマップするかを定義し、アニメーション化できるようにします。ヒューマノイドキャラクターの場合、これはアバターの割り当てや作成を意味します。非ヒューマノイド (Generic) キャラクターの場合、これはスケルトンのルートボーンの特定を意味します。
デフォルトでは、Project ウィンドウでモデルを選択すると、選択したモデルに最も一致する Animation Type が Unity によって決定され、Rig タブに表示されます。Unity にファイルをインポートしたことがない場合、Animation Type は None に設定されます。
| プロパティ | 機能 | |
|---|---|---|
| Animation Type | アニメーションのタイプを指定します。 | |
| なし | アニメーション無し | |
| Legacy | 非推奨の古いアニメーションシステムを使用します。Unity バージョン 3.x 以前と同様に、アニメーションをインポートして使用します。 | |
| Generic | リグが非ヒューマノイド (四つ足など、アニメーション化されるすべての実体) である場合は、Generic Animation System を使用します。Unity では root ノードが選択されますが、代わりに、別のボーンを指定して__ root ノード__として使用することもできます。 | |
| Humanoid(ヒューマノイド) | リグがヒューマノイド (脚が 2 本、腕が 2 本、頭が 1 つ) の場合は、Humanoid Animation System を使用します。通常、Unity でそのスケルトンが検出され、アバターに正しくマップされます。場合によっては、Avatar Definition を変更し、 Configure で手動でマッピングを設定する必要があります。 | |
Generic Animations では、ヒューマノイドアニメーションのようなアバターを使用しません。スケルトンは任意であるため、どのボーンが__ root ノード__かを指定する必要があります。root ノードを選択することで、あるジェネリックモデルでのアニメーションクリップ間で一貫性を維持し、“位置が合わない” (つまり、アニメーション作成中にモデル全体がそのワールド位置を移動する) アニメーションを適切にブレンドできます。
root ノードを指定することで、互いに関連するボーンの動きをシステムが判断しやすくなり、ワールドでのルートノードのモーションの決定に役立ちます (OnAnimatorMove で制御されます)。
| プロパティ | 機能 | |
|---|---|---|
| Avatar Definition | アバターの定義を取得する場所を選択します | |
| Create from this model | このモデルに基づいてアバターを作成します | |
| Copy from Other Avatar | 別のモデルに設定されたアバターを選択します | |
| Root node | このアバターの root ノードとして使用するボーンを選択します。 この設定は Avatar Definition が Create From This Model に設定されている場合のみ使用可能です。 |
|
| Source | 同一のリグを持つ別のアバターをコピーして、アニメーションクリップをインポートします。 この設定は Avatar Definition が Copy Other Avatar に設定されている場合のみ使用可能ます。 |
|
| Skin Weights | 1 つの頂点に影響を与えることができるボーンの最大数を設定します。 |
|
| Standard (4 Bones) | 最大で 4 つのボーンの影響力を使用します。これはデフォルトであり、パフォーマンスのために推奨されています。 | |
| Custom | 独自の最大ボーン数を設定します。 このオプションを選択すると、Max Bones/Vertex と Max Bone Weight のプロパティが表示されます。 |
|
| Max Bones/Vertex | 頂点ごとのボーンの最大数を設定して、指定した頂点に影響するようにします。頂点ごとに 1 から 32 のボーンを設定できますが、頂点に影響するボーンの数が多いほど、パフォーマンスコストは大きくなります。 この設定は、Skin Weights プロパティを Custom に設定した場合にのみ使用できます。 |
|
| Max Bone Weight | ボーンの重み付けを考慮する最低しきい値を設定します。重み付けの計算では、この値よりも小さい値はすべて無視されます。Unity では、この値よりも高いボーンの重みは、合計 1.0 にスケールアップされます。 この設定は、Skin Weights プロパティが Custom に設定されている場合にのみ使用できます。 |
|
| Optimize Game Object | インポートしたキャラクターのゲームオブジェクトの Transform 階層を取り除き、アバターとアニメーターコンポーネントに保存します。この機能を有効にすると、キャラクターの SkinnedMeshRenderer には Unity アニメーションシステムの内部スケルトンが使用され、アニメーション化されたキャラクターのパフォーマンスが向上します。 Avatar Definition が Create From This Model に設定されている場合のみ使用可能です。 |
|
| Extra Transforms to Expose |
Optimize Game Object の有効時に無視される Transform パスを指定します。詳細は、余分な Transform の追加を参照してください。 このセクションは、Optimize Game Object が有効な場合にのみ表示されます。 |
|
まれな例外を除いて、ヒューマノイドモデルの基本構造体は同じです。この構造体は、ボディに関節でつながった主要な部分である、頭と手足を表します。Unity のヒューマノイドのアニメーション機能を使用するための第一歩は、__アバター__を設定して使用することです。Unity はアバターを使用して、簡略化されたヒューマノイドボーン構造体を、モデルのスケルトンに存在する実際のボーンにマップします。
| プロパティ | 機能 | |
|---|---|---|
| Avatar Definition | アバターの定義を取得する場所を選択します | |
| Create from this model | このモデルに基づいてアバターを作成します | |
| Copy from Other Avatar | 別のモデルに設定されたアバターを選択します | |
| Source | 同一のリグを持つ別のアバターをコピーして、アニメーションクリップをインポートします。 Avatar Definition が Copy Other Avatar に設定されている場合のみ使用可能です。 |
|
| Configure… |
Avatar 設定を開きます。 Avatar Definition が Create From This Model に設定されている場合のみ使用可能です。 |
|
| Skin Weights | このプロパティは、Humanoid モデルと Generic モデルの両方で同じです。これに関する情報は、前述の Skin Weights のドキュメントを参照してください。 | |
| Optimize Game Object | インポートしたキャラクターのゲームオブジェクトの Transform 階層を取り除き、アバターとアニメーターコンポーネントに保存します。この機能を有効にすると、キャラクターの SkinnedMeshRenderer には Unity アニメーションシステムの内部スケルトンが使用され、アニメーション化されたキャラクターのパフォーマンスが向上します。 Avatar Definition が Create From This Model に設定されている場合のみ使用可能です。 |
|
| Extra Transforms to Expose |
Optimize Game Object の有効時に無視される Transform パスを指定します。詳細は、余分な Transform の追加を参照してください。 このセクションは、Optimize Game Object が有効な場合にのみ表示されます。 |
|
Optimize Game Object プロパティを有効にすると、Unity では CPU パフォーマンスを向上させるために、階層の一部でありながらアバターにマップされていない Transform があればそれを無視します。ただし、Extra Transforms to Expose セクションを使って、ゲームオブジェクト階層の特定のノードをマークして計算に入れることができます。
(A) 検索フィールドにフルネームまたは名前の一部を入力して、Transform のリストをフィルターします。これにより、ボーンの数が多いキャラクターを簡単に見つけることができます。
(B) Unity の計算に入れたい各 Transform (スケルトンのボーン) を有効にします。
(C) 特定の Transform を選択するためにボタンを使用します。例えば、Toggle All ボタンは、すべてを一度に選択または選択解除します。現在の選択範囲 (フィルターされたアイテムを含む) は関係ありません。
(D) 選択した内容を元に戻すには Revert ボタンを、例外をモデルに適用するには Apply ボタンを使用します。
ノート: 最適化されたモードでは、スキンメッシュの行列の抽出はマルチスレッドです。
| プロパティ | 機能 | |
|---|---|---|
| Generation | アニメーションのインポート方法を選択します。 | |
| Don’t Import | アニメーションをインポートしません | |
| Store in Original Roots (Deprecated) | 廃止されています。使用しないでください。 | |
| Store in Nodes (Deprecated) | 廃止されています。使用しないでください。 | |
| Store in Root (Deprecated) | 廃止されています。使用しないでください。 | |
| Store in Root (New) | アニメーションをインポートし、モデルの root ノードに格納します。これがデフォルトの設定です。 | |
| Skin Weights | このプロパティに関する情報は、前述の Skin Weights のドキュメントを参照してください。 | |
古いアニメーションの詳細については、古いアニメーションシステムのドキュメントを参照してください。