UE4.13から導入された物理アニメーションという仕組みがあります。
結構時間が経ったので、公式での解説がでてくるかなと思いきや、未だに解説どころか日本語の情報が皆無なので、さっくりと調べてみたことを書いてみます。
まず物理アニメーションには当然ながらスケルタルメッシュのキャラクターが必要です。いつもお世話になっている、サードパーソンテンプレートのマネキンことグレイマンが最も使いやすいので、それをベースに解説します。
物理アセットツールでプロファイルセットアップ
最初にマネキンの物理アセットツールを開きます。物理アセットツールのメニューから"ウィンドウ"の"物理アセット"を開き、"Physical Animation Profiles"をひとつ追加します。
次にメニューバーから"Profiles"ボタンを選択し、追加したプロファイルを選択します。そして左側のボーン階層から"pelvis"というボーンを選択します。それ以外のボディと一体になったボーンを選択でも構いません。
そして"Add to Profile: ProfileName"ボタンを選択。これで物理アニメーション用のプロファイルデータができます。
おもむろに上記のようにパラメーター値を入力します。これは調整値なので、必要に応じて変更してください。これで物理アセットツール内での作業は終了です。
ブループリントを作成
ここからはブループリントの調整です。"ThirdPersonCharacter"のブループリントを開きましょう。
まずは"CapsuleComponent"の横の長さを小さくしておきます。"Capsule Radius"を"11.0"くらいに。これで身体の部分を壁に衝突させることができます。
次にスケルタルメッシュのコリジョンを調整します。コンポーネントから"Mesh"を選択してください。そして詳細パネル内でコリジョンプリセットを"Custom"に変更し、上記のような設定にしておきます。これで物理処理のみが可能になります。
そして最大のキモとなる"Physical Animation"コンポーネントを追加します。これで物理アニメーションを利用可能となりました。あとはブループリントノードを組むのみです。
ブループリントのノード部分は上記で全てです。もちろん細かく調整する場合には更なら設定が必要です。変数"Bone Name"には腰のボーンである"pelvis"という値がデフォルト値で入っています。これで全ての準備が整いました。
キャラを動かしてみる
それでは早速実際に動かしてみましょう。
面白い感じに動いています。試しに壁に当たりにいくと腕が壁に当たって肩が後ろの方へと押し出された状態になります。
さて、これで簡単な物理アニメーションの使い方がわかりました。このシステムは実に奥が深いので、調整次第でもっともっと面白い動きができると思います。
詳しい解説は公式のライブストリーミングでも解説されているので、英語で観るのが苦ではない人はぜひ一度観てみてください。