PR

【UE5】エイムオフセットの作り方

Unreal Engine 5

Unreal Engine 5で、ベースとなるアニメーションに異なるアニメーションを加算する、エイムオフセットの作り方です。

ここでは「歩行」と「待機」をブレンドスペースで合成したアニメーションに、エイムオフセットで「下半身の回転」を加算します。

スポンサーリンク

エイムオフセットの概要

エイムオフセットはブレンドスペースと似ていますが、グラフには加算セッティングを設定したアニメーションシーケンスしか配置できません。
加算セッティングを設定したアニメーションシーケンスをグラフに配置して、プレビューポイントを動かすと、加算されるアニメーションの合成結果を確認できます。
また、「アセット詳細」の「加算セッティング」に「Preview Base Pose」を設定すると、設定したアニメーションに、エイムオフセットでの合成結果を加算したアニメーションを確認できます。

スポンサーリンク

ブレンドスペースの作成

ブレンドスペースについては作り方の詳細は省きますが、エイムオフセットでアニメーションを加算する対象として、キャラクター速度によって「歩行」と「待機」が切り替わるように設定します。

スポンサーリンク

アニメーションシーケンスの作成

エイムオフセットに使うための、1フレームだけのアニメーションシーケンスを作成します。
この1フレームのアニメーションシーケンスと、「Base Pose Animation」に設定したアニメーションシーケンスの差分が、エイムオフセットで加算されます。

アニメーションの編集

シーケンサーで、「Base Pose Animation」として利用する「歩行」アニメーションに、下半身の回転を追加したアニメーションを作成します。

レベルシーケンスを開く

  • 「アウトライナー」でレベルシーケンスを選択
  • 「詳細」の「レベルシーケンスを開く」をクリック

セクションの追加

元のアニメーションのキーをコピーして編集しても良いですが、Additiveセクションを追加して編集すると、エイムオフセット追加後の一連のアニメーションを再現しやすくなります。

  • 「シーケンサー」で、セクションを右クリック
    (右クリックしたセクションの下に、新しいセクションが追加される)
  • 「セクションを追加」の「Additive」を選択

キーの追加

「歩行」アニメーションと追加したセクションだけをアクティブにした状態で、追加したセクションにキーを追加します。

  • 最初のフレームを選択
  • コントロールリグを操作してポーズを作成してキーを追加
  • 追加したキーを選択して、Ctrl+Cキーでコピー
  • 最後のフレームを選択して、Ctrl+Vキーでペースト

アニメーションシーケンスのベイク

「歩行」アニメーションと、「歩行」アニメーションの下半身を左右に回転したアニメーションの1フレーム目をそれぞれベイクし、3つのアニメーションシーケンスを作成します。

  • シーケンサーで、再生範囲を1フレーム目のみに変更
  • シーケンサー内のコントロールリグを右クリック
  • 「アニメーションシーケンスをベイク」を選択
  • 保存するフォルダを選択
  • ファイル名を入力して「OK」をクリック
  • デフォルト設定のまま「アニメーションシーケンスにエクスポート」をクリック

アニメーションシーケンスの設定

作成したアニメーションシーケンスを開き、「Base Pose Animation」を設定します。

  • 「アセット詳細」の「加算セッティング」で、「Additive Anim Type」に「Mesh Space」を選択
  • 「Base Pose Type」に「Selected animation frame」を選択
  • 「Base Pose Animation」に「歩行」アニメーションを選択
  • 「Ref Frame Index」に0を設定
スポンサーリンク

エイムオフセットの作成

下半身の方向によって、作成した3つのアニメーションシーケンスを切り替えるエイムオフセットを作成します。

アセットの作成

エイムオフセットのアセットを作成します。

  • 「コンテンツブラウザ」でフォルダを選択
  • 「追加」をクリック
  • 「アニメーション」の「アニメーションオフセット」を選択し、「スケルトンを選択」ウィンドウを開く
    ※エディタ内ではエイムオフセットがアニメーションオフセットに変更されていますが、公式アナウンスが見当たらないので、この記事ではアニメーションオフセット=エイムオフセットとして説明します。
  • 開いたウィンドウで、アニメーション作成に使用したコントロールリグに設定しているスケルトンを選択し、アセットを作成

アセットの設定

作成したアセットを開き、エイムオフセットの設定を行います。

  • 「アセット詳細」で、「Axis Settings」の「水平軸」の項目(「Name」、「Minimum Axis Value」、「Maximum Axis Value」)を設定
  • 「アセット詳細」で、「加算セッティング」の「Preview Base Pose」に「歩行」アニメーションを設定
  • 「歩行」の1フレーム目のアニメーションシーケンスを、グラフの中央に配置
  • 下半身を右回転、または左回転した「歩行」の1フレーム目のアニメーションシーケンスを、それぞれグラフの右端、左端に配置

設定後のプレビュー

プレビューで、横軸の値によって下半身が回転することが確認できます。

これで、このエイムオフセットを「歩行」アニメーションに加算すると、下半身を回転した「歩行」アニメーションになることがわかります。

スポンサーリンク

アニメーションブループリントの変更

キャラクターのアニメーションブループリントを開き、Anim Graph内の歩行時に実行するステートに処理を作成します。

Anim Graphの作成

歩行時に実行するステートで、ブレンドスペースの合成結果に、エイムオフセットでアニメーションを加算する処理を作成します。

  • 「Blendspace Player」で、キャラクターの移動速度に合わせて、「歩行」と「待機」を合成したアニメーションを作成
  • 「AimOffset Player」で、キャラクターの下半身角度に合わせて、下半身の回転のアニメーションを作成して加算
  • 「Output Animation Pose」で、合成したアニメーションを出力

キャラクターの移動速度と下半身角度は、別途イベントグラフで計算して変数に格納した値です。

これで、キャラクターを動かしたときに、移動速度と下半身角度に合わせたアニメーションが再生されます。

以上です。

コメント

タイトルとURLをコピーしました