LyraStarterGameから自分の作ったプロジェクトにアニメーションを移行する方法
まともにやろうとするとC++クラスを親に持つBlueprintがあると大変な作業が必要ですが、この方法だと簡単に自分のプロジェクトに移行できます。
プロジェクトの準備
1.マーケットプレイスからLyraStarterGameをダウンロードする
2.Third Personをベースに新規プロジェクトを作成する
3.2で作ったThird PersonのプロジェクトにEdit→PluginからAnimation Locomotion LibraryとAnimation Warpingを追加して再起動する
LyraStarterGameでのアニメーションを移す準備
1.LyraStarterGameのプロジェクトでAll→Context→Charactor→Heroes→Mannequin→Animationを開いてABP_Mannequin_Baseを複製してCopyと名付ける
2.Copyを開く→タブのClassSetting→LyraAnimInstanceをAnimInstanceに変更する
3.ダイヤログでRepairentを選ぶ
ここでエラーを修正が出るので修正する
4.ログのエラーをクリックしてAnimGraphを開く
5.以下のように修正する
6.同じ様にログのエラーをたどりFullLoop to FallLand(rule)を開く
Ground Distanceを右クリックしてCreate variableを選択してcompileして保存しておく
Ground Distanceノードを選択した状態で右の詳細欄からGround Distanceに-1.0と入力する(compileと保存してないと反映されないので注意)
compileとsaveして準備は終わりです。
Third Personを含んだ自分のプロジェクトに移行する
LyraStarterGameを開いた状態でAll→Context→Charactor→Heroes→Mannequinフォルダを選択して右クリック→MigrageでThird Personを含んだ自分のプロジェクトのContextフォルダを選び移行する
以下のダイヤログが出たらNoを選択
自分のプロジェクトで使えるように修正
1.ABP_Mannequin_BaseをForce Deleteで強○的に削除する
2.Copyの名前でF2を押してABP_Mannequin_Baseにリネームする
3.All→Context→ThirdPerson→Blueprints→BP_ThirdPersonCharacterを開いてContstrctionに以下様にノードを追加する。この時にLinkAnimLayerのIn Classに再生したいアニメーションを指定する(ここではUnarmedAnimLayerを指定してます)
4.左側からMeshを選択して右側のAnimCalssをABP_Mannequin_BaseにしてSkeltal MeshをSKM_Quinnにしてcompileとsaveする。
Aimoffsetを機能するように修正
ABP_Mannequin_BaseのAnim_Graphを開きAimYawとAimPitchをGetで取得してFullBody_Aimmingの引数に渡す。(引数がなかったら右の詳細欄からBindのところをExpose Pinを選ぶと表示される)