__アニメーションクリップ__は、Unity のアニメーションの最小の構成要素です。RunLeft、Jump、Crawl など、独立したモーションの一部を表し、さまざまな方法で編集して組み合わせることにより、リアルなアニメーションが生成できます (アニメーションステートマシン、アニメーターコントローラー、または ブレンドツリーを参照してください)。アニメーションクリップ は、Unity のアニメーションの最小の構成要素です。それらは、RunLeft、Jump、Crawl などの独立したモーションを表し、様々な方法で操作し組み合わせることで、活気のあるアニメーションを生み出すことができます (アニメーションステートマシン、アニメーターコントローラー、ブレンドツリー を参照)。 インポートした FBX データからアニメーションクリップを選択できます。
アニメーションクリップを含むモデルをクリックすると、以下のプロパティが表示されます。
Inspector ウィンドウの Animation タブは 5 つの部分に分けられています。
(A) アセット特有のプロパティ。これらの設定は、アセット全体のインポートオプションを定義します。
(B) クリップ選択リスト。このリストから任意の項目を選択してプロパティを表示し、そのアニメーションをプレビューできます。新しいクリップを定義することもできます 。
(C) クリップ固有のプロパティ。これらの設定は、選択した__アニメーションクリップ__のインポートオプションを定義します。
(D) クリッププロパティ。これらの設定は、すべてのアニメーションクリップのインポートオプションを定義します。
(E) アニメーションプレビュー。アニメーションを再生し、特定のフレームを選択することができます。
これらのプロパティは、このアセット内で定義されたすべてのアニメーションクリップと制約に適用されます。
| プロパティ | 機能 | |
|---|---|---|
| Import Constraints | このアセットから コンストレイントをインポートします。 | |
| Import Animation | このアセットからアニメーションをインポートします。 ノート:無効にすると、このページの他のすべてのオプションは非表示になり、アニメーションはインポートされません。 |
|
| Bake Animations | キネマティックなキーフレームを転送するために、IK やリアルタイムな計算で作成されたアニメーションをベイクします。 Autodesk® Maya®、Autodesk® 3ds Max®、Cinema 4D ファイルのみに使用可能です。 |
|
| Resample Curves | Unity のデフォルトの動作は、これらのアニメーションカーブをクォータニオン値でリサンプリングし、アニメーションのすべてのフレームに対し新しいクォータニオンのキーフレームを生成します。 このオプションは、インポートファイルにオイラー曲線が含まれている場合にのみ表示されます 。このオプションはデフォルトで有効です。 アニメーションカーブをもともと作成された通りに保つ場合は、選択しません。このオプションを無効にするのは、元のアニメーションと比較したときに、リサンプリングされたアニメーションに補間の問題がある場合だけです。 |
|
| Anim.Compression | アニメーションをインポートするときに使用する圧縮のタイプ。 | |
| Off | アニメーション圧縮を無効にします。つまり、Unity はインポート時にキーフレーム数を減らしません。アニメーション圧縮を無効にすると、精度が非常に高いアニメーションになりますが、パフォーマンスの速度が低下し、ファイルとランタイムメモリのサイズが増大します。通常、このオプションを使用することはお勧めできません。高精度のアニメーションが必要な場合は、代わりにキーフレームの削減を有効にし、Animation Compression Error 値をできるだけ低くします。 | |
| Keyframe Reduction | インポート時に重複するキーフレームを削減します。有効にすると、Inspector に Animation Compression Error のオプションが表示されます。これはファイルサイズ (ランタイムメモリ) とカーブの評価方法の両方に影響します。 Legacy、Generic、および Humanoid アニメーションタイプのリグに適用されます。 |
|
| Keyframe Reduction and Compression | インポート時にキーフレームを減らし、ファイルにアニメーションを格納する時にキーフレームを圧縮します。ファイルサイズのみに影響し、ランタイムのメモリサイズは、Keyframe Reduction をオンにした場合と同じになります。有効にすると、Inspector に Animation Compression Error のオプションが表示されます。 Legacy アニメーションタイプリグのみ。 |
|
| Optimal | Unity が圧縮の仕方を判断します。キーフレームを削除するか、高密度な (dense) 形式を使用するかのいずれかです。有効にすると、Inspector に Animation Compression Error のオプションが表示されます。 Generic__および__Humanoid アニメーションタイプのリグのみ。 |
|
| Animation Compression Errors | Keyframe Reduction または Optimal 圧縮が有効な場合のみ使用可能です。 | |
| Rotation Error | 回転カーブ圧縮の許容誤差を (角度として) 設定します。Unity はこれを使用して、回転カーブ上のキーを削除できるかどうかを判断します。 これは、元の回転値と削減された値の間の最小角度を表します。 Angle(value, reduced) < RotationError
|
|
| Position Error | 位置カーブ圧縮の許容誤差を (パーセンテージで) 設定します。Unityはこれを使用して、位置カーブ上のキーを削除できるかどうかを判断します。詳細については、位置とスケールカーブのキー 削減の許容誤差の設定を参照してください。 | |
| Scale Error | スケールカーブ圧縮の許容誤差を (パーセンテージで) 設定します。Unity はこれを使用して、スケールカーブ上のキーを削除できるかどうかを判断します。詳細については、位置とスケールカーブのキー 削減の許容誤差の設定を参照してください。 | |
| Animated Custom Properties | カスタムのユーザープロパティとして指定した FBX プロパティをすべてインポートします。 Unity は、FBX ファイルをインポートするときに、小さなプロパティのサブセットのみをサポートします (Translation、Rotation、Scale、Visibility など)。ただし、extraUserProperties メンバーを使用してインポータースクリプトで名前を付けることで、ユーザープロパティなどの標準的な FBX プロパティを扱うことができます。インポート中、Unity は名前付きプロパティを ‘実際の’ ユーザープロパティと同様にアセットポストプロセッサーに渡します。 |
|
許容誤差のパーセンテージを設定して、 アニメーション 圧縮の戦略としてUnityが位置またはスケールカーブの キーを削除できるかどうかを決定します。
Anim.Compression プロパティを “Keyframe Reduction”または “Optimal”に設定すると、Unity は元のカーブを特定のキーフレームを削除した後のカーブと比較し、このテストを適用します。
OriginalValue - ReducedValue > OriginalValue * percentageOfError
元の値と削減された値の差が元の値に許容誤差を乗算した値よりも小さい場合、Unityはキーフレームを削除します。
Unity は 3 つのカーブコンポーネント間の距離を比較 (つまり distance(x,y,z) を比較) し、コンポーネントごと (distance(x)、distance(y)、そして distance(z)) にも比較します。
この例は、Unityが10%の許容誤差を使用してy 軸の 削減を評価する方法を示しています。
キーフレームAの値は11.2です。
キーフレームBの値は11.1です。
結果の縮小カーブは次のようになります。
キーフレーム A は縮小されません。理由は以下のとおりです。
D = 11.2 - 10 = 1.2
E = 10% * 11.2 = 1.12
キーフレーム B は縮小されます。理由: 11.1 - 10 < 10% * 11.1:
D = 11.1 - 10 = 1.11
E = 10% * 11.1 = 1.11
わずかに異なる大きな値を使用する場合、この方法には制限があることに注意してください。シーンを1000ユニット離すと、基本的に同じアニメーションが、0から遠く離れた位置に移動します。
この場合、両方のキーフレームが削減されます。
キーフレームAが削減される理由は以下のとおりです。
D = 1011.2 - 1010 = 1.2
E = 10% * 1011.2 = 101.12
キーフレーム B は縮小されます。理由: 11.1 - 10 < 10% * 11.1:
D = 11.1 - 10 = 1.11
E = 10% * 1011.1 = 101.11
キーフレームが削減されたカーブに留まるためには、値が高いほど、元の値と削減された値の差を大きくする必要があります。キーフレーム A の値は 1100 で、破棄されます。キーフレーム B の値は 1112 で、そのまま残ります。
これらのタスクは Animation タブの各セクションで行います。
+) ボタンでこのファイルに新規クリップの作成を行います。-) ボタンで選択したクリップ定義を削除します。インポートしたクリップのプロパティを手動で変更した場合、ソースアセットが変更されても新しいアニメーションクリップはインポートされません。例えば、Animation タブで新しいクリップを作成したり、クリップのタイミングを変更したりした場合に、Unity の外部で FBX ファイルにクリップを追加しても、そのクリップリストは更新されません。新しいアニメーションクリップと変更されたアニメーションクリップを表示するには、新しいソーステイクをクリップリストに追加する必要があります。
Animation タブのこのエリアには、以下の機能が表示されます。
(A) 選択したクリップの編集可能な名前。
(B) アニメーションクリップのタイムライン。
(C) ループ、ルートモーション抽出、カーブ、イベント、アバターマスクをコントロールするクリッププロパティ。
アセット内で定義された各アニメーションクリップに対して、以下のプロパティを個別に設定できます。
| プロパティ | 機能 | |
|---|---|---|
| Area A | ||
![]() テイク名 |
ソースファイル内のソーステイクの名前。ソースファイルには、Motionbuilder や Autodesk® Maya® などの外部 3D アプリケーションで作成された一連のソースが含まれます。 ソーステイクを個々のアニメーションクリップとしてインポートできます。アニメーションクリップをフレームのサブセットから作成することもできます。 |
|
| Area B | ||
![]() |
アニメーションタイムラインの開始と終了のインジケーターをドラッグして、各クリップのフレーム範囲を定義します。 クリップを作成することは、アニメーションのセグメントに対して開始地点や終了地点を定義することです。ループするクリップを定義するには、開始点と終了点をトリムして、最初と最後のフレームができるだけ一致するようにします。タイムラインをズームおよびスクロールして、より精度を高めることもできます。 |
|
| Start | クリップの開始フレーム | |
| End | クリップの終了フレーム | |
| Area C | ||
| Loop Time | アニメーションクリップを最後まで再生し終わると、リスタートします。 | |
| Loop Pose | モーションをシームレスにループします。 | |
| Cycle Offset | 時間をずらしてアニメーションのループのサイクルを開始する場合、サイクルのオフセット。 | |
| Root Transform Rotation | ||
| Bake into Pose | ルートの回転をボーンの動きにベイクします。ルートモーションとして保存する場合は無効にします。 | |
| Based Upon | ルートの回転のベース | |
| Original | ソースファイルの元の回転を維持します。 | |
| Root Node Rotation | ルートノードの回転を使用します。 Generic アニメーションタイプでのみ使用可能です。 |
|
| Body Orientation | 上半身を前方に向けます。 Humanoid アニメーションタイプでのみ使用可能です。 |
|
| Offset | ルートの回転のオフセット値 (角度単位) | |
| Root Transform Position (Y) | ||
| Bake into Pose | 垂直方向のルートモーションをボーンの動きにベイクします。ルートモーションとして保存する場合は無効にします。 | |
| Based Upon(at Start) | 垂直のルート位置のベース。 | |
| Original | ソースファイルからの垂直位置を維持します。 | |
| Root Node Position | 垂直のルート位置を使用します。 Generic アニメーションタイプでのみ使用可能です。 |
|
| Center of Mass | 重心をルートのトランスフォームの位置に合わせて整列します。 Humanoid アニメーションタイプでのみ使用可能です。 |
|
| Feet | 足をルートのトランスフォーム位置に合わせて整列します。 Humanoid アニメーションタイプでのみ使用可能です。 |
|
| Offset | 垂直のルート位置のオフセット値。 | |
| Root Transform Position (XZ) | ||
| Bake into Pose | 水平方向のルートモーションをボーンの動きにベイクします。ルートモーションとして保存する場合は無効にします。 | |
| Based Upon | 水平のルート位置のベース。 | |
| Original | ソースファイルからの水平の位置を維持します。 | |
| Root Node Position | 水平ルートの Transform 位置を使用します。 Generic アニメーションタイプでのみ使用可能です。 |
|
| Center of Mass | ルートのトランスフォーム位置に合わせて整列します。 Humanoid アニメーションタイプでのみ使用可能です。 |
|
| Offset | 水平のルート位置のオフセット値 | |
| Mirror | このクリップで左と右をミラーリング。 アニメーションタイプが Humanoid に設定されている場合のみ表示されます。 |
|
| Additive Reference Pose |
加法的アニメーションレイヤーのベースとして使用される参照ポーズのフレームを設定できるようにします。タイムラインエディターに青色のマーカーが表示されます。
|
|
| Pose Frame | 参照ポーズとして使用するフレーム番号を入力します。タイムラインで青のマーカーをドラッグして、この値を更新することもできます。 Additive Reference Pose が有効な場合のみ使用可能です。 |
|
| カーブ | このセクションを展開し、このアニメーションクリップのアニメーションカーブを管理します。 | |
| イベント | このセクションを展開し、このアニメーションクリップのアニメーションイベントを管理します。 | |
| Mask | このセクションを展開し、このアニメーションクリップのアバターマスキングを管理します。 | |
これらの展開可能なプロパティーは、インポート中のすべてのアニメーションクリップに適用できます。
| プロパティ | 機能 |
|---|---|
| Motion | このセクションを展開し、インポートされたすべてのクリップのルートモーションノードを管理します。 |
| Import Messages | このセクションを展開し、アニメーションのインポート方法に関する情報とオプションの Retargeting Quality Report を表示します。 |
アニメーションのインポート処理中に問題が発生した場合は、アニメーションのインポートインスペクター上部に警告が表示されます。
警告は、必ずしもアニメーションがインポートされていない、または、動作していないことを意味しているわけではありません。インポートされたアニメーションが、元のアニメーションと完全に同じでないことを意味している場合があります。
詳細情報を表示するには、Import Messages セクションを展開します。
この場合、Unity は Generate Retargeting Quality Report オプションを提供しています。これを有効にすると、リターゲティングの問題に関するより具体的な情報を確認できます。
他の警告の詳細は以下の通りです。
これらのメッセージは、アニメーションが Unity にインポートされ、Unity の内部形式に変換されるときに、元のファイルにあるデータの一部が失われたことを示しています。つまり、これらの警告が基本的に意味しているのは、リターゲットされたアニメーションが元のアニメーションに完全一致しない可能性があるということです。
注意Unity は、constant 以外で事前、または事後の外挿モード (pre-infinity と post-infinity モードとも呼ばれます) をサポートせず、インポート時に constant に変換します。
Animation タブのプレビューエリアには、以下の機能があります。
(A) 選択したクリップの名前。
(B) 2D プレビューモードボタン (平行投影カメラと透視カメラを切り替えます)。
(C) ピボットと重心の表示ボタン (ギズモの表示と非表示を切り替えます)。
(D) アバターセレクター (どのゲームオブジェクトのアクションをプレビューするかを変更します)。
(E) 再生/一時停止ボタン。
(F) プレビュータイムラインの再生ヘッド (前後にスクラブできます)。
(G) アニメーションプレビューのスピードスライダー (左に動かすと遅く、右に動かすと速くなります)。
(H) 再生ステータスインジケーター (再生位置を秒、パーセンテージ、フレーム番号で表示します)。
(I) Tag バー (タグを定義し、クリップに適用します)。
(J) アセットバンドルバー (アセットバンドルとバリアントを定義できます)。
AnimationClip