
アニメーションの間、Aim Offset の結果は走る、歩く、ジャンプするなどの他のモーションとブレンドされ、キャラクターが全ての方向をスムーズに見ているようにします。
Aim Offset の重要な概念は、それらが既存のアニメーションに加算してブレンドされるように作成されている、ということです。従って、Aim Offset を使用してキャラクターに武器の照準を合わせさせる場合、キャラクターの他のモーションが加算モーションの邪魔にならないようにしてください。別の言い方をすれば、Aim Offset で追加で制御できるように、走る、アイドル、ジャンプなどではかなり剛健なアームが必要になります。
いろいろな意味で、Aim Offset はブレンド スペースと似ています。従って、Aim Offset を使う前に、ブレンド スペースについて確実に理解するとよいでしょう。詳細は「Blend Spaces」を参照してください。
Aim Offset をキャラクターに適用した例として、セクション 1.4 の 機能別サンプル:アニメーション を参照することもできます。
Aim Offset を作成する
他のアセットと同様に、Aim Offset は [コンテンツ ブラウザ] で作成します。右クリック または ボタンを使ってコンテキストメニューから [Animation] > [Aim Offset] の順に選択します。 お気づきのように、Aim Offset 1D というオプションもあります。これは Aim Offset と同じですが、ブレンドを制御するために標準の Aim Offset が 2 つの変数からの入力をサポートするのに対し、 1 つの変数からの入力のみをサポートします。
Aim Offset を新規作成する場合、スケルトン アセットを指定します。Aim Offset で使用したいスケルタル メッシュで使うものと同じアセットを選択するようにしてください。
照準ポーズ
Aim Offset の目的は照準しやすいように様々なポーズを加算的に組み合わせることです。一般的に作成する必要があるポーズのタイプについて説明していきます。実際に必要になるポーズ数は、使用するキャラクターが必要なモーションによって大きく異なります。以下は極端な例です。
![]() |
![]() |
![]() |
![]() |
![]() |
---|---|---|---|---|
右後方上 | 右上 | 中央上 | 左上 | 左後方上 |
![]() |
![]() |
![]() |
![]() |
![]() |
---|---|---|---|---|
右後方中央 | 右中央 | 中央 | 左中央 | 左後方中央 |
![]() |
![]() |
![]() |
![]() |
![]() |
---|---|---|---|---|
右後方下 | 右下 | 下 | 左下 | 左後方下 |
ただし、このような設定を使用する場合は、ヨー (左右) モーションのアニメーション方法に特に気をつける必要があります。例えば、上の例であげたモーションはキャラクターが静止して立っている場合には問題ありません。しかし、キャラクターを走りながら後ろ向きにひねらせようとすると、このような醜い格好になってしまいます。

このため、Aim Offset では多くの場合、キャラクターに左右ではなくむしろ上下に照準を合わせる設定にして、実際のキャラクターの回転で左右のモーションに対応させます。ただし、上図のポーズを使用することもできます。キャラクターが固定されている場合のみ左右のモーションが使用できるように、Animation ブループリントを使って Aim Offset の入力データを制限しさえすればいいのです。
メッシュ空間
必要なポーズをそれぞれ Unreal Engine にインポートしたら、Aim Offset と互換性を持つようにそれらに特別なプロパティを設定する必要があります。[Additive Settings] カテゴリで以下の設定を確認してください。
- Additive Aim Type - AAT_MeshSpace
Aim Offset はメッシュ空間では Additive Aim Type のみアニメーションを可能とします。
メッシュ空間は、Aim Offset アセットなど一部のインスタンスでのみ使用されるという点で、加算アニメーションのデルタを若干異なる方法で抽出します。メッシュ空間は回転のベースとしてメッシュの境界ボックスを使い、スケルタル メッシュのボーンのチェーン方向に関係なく、回転が同じ方向で動くようにします。横に傾きつつも拳銃の照準を上に向ける必要のあるキャラクターを考えてみましょう。上方照準のモーションがローカル空間の場合、照準は寄りかかっている方向である外側に回転します。
![]() |
![]() |
---|---|
ベースとなるアイドル ポーズ | 上方照準 |
![]() |
![]() |
![]() |
---|---|---|
傾いたポーズ | 傾きながら上方照準 (ローカル空間) | 傾きながら上方照準 (メッシュ空間) |
これはメッシュ空間回転で解決できます。回転はスケルタル メッシュのボックスに基いているので、キャラクターの動作に関係なく回転の方向は一定を保ちます。従って、キャラクターが横に傾いたとしても、上方照準は上向きのまま回転します。
メッシュ空間はアニメーション シーケンスのプロパティとして設定されます。[Additive Settings] カテゴリに Additive Anim Type プロパティがあります。これをメッシュ空間に設定すると、説明したとおりのメッシュ座標空間が使用されます。このブレンディング操作はかなり負荷が高くなります。そのため、Aim Offset のケースのように、アニメーションを一定方向に移動させる必要があると分かっている特定のタイプのブレンド スペースのみで使用するのが一般的です。
パフォーマンス

Aim Offset ノードを Anim Graph に配置すると、4.11 で導入された LOD Threshold プロパティを使ってパフォーマンスを調整することができます。この設定は、Aim Offset ノードの [Details (詳細)] パネルにあります。

プロパティ | 説明 |
---|---|
LOD Threshold | このノードで実行が認められている最高 LOD (Level of Detail) です。例えば、LOD Threshold を 2 に設定すると、LOD 2 になるまでは実行しますが、コンポーネントの LOD が 3 になると無効になります。 |