【UE5】プレイヤーカメラのSave & Loadで回転が上手くいかない場合はPlayer ControllerのControl Rotationを参照する

Pocket
LinkedIn にシェア
LINEで送る
reddit にシェア
このエントリーをはてなブックマークに追加

日本庭園運営シミュレーションゲーム制作中です。
当然ですがゲームのロード時にカメラのTransformも復元してほしいのですが、単純にやると位置は正しいのですが、回転が取れてこないので困った。備忘録。

やり方

特にDefault Pawnとかだと、向きRotationはPlayer ControllerのControl Rotationさんが管理しているようです。たしかにPlayしてPawnのTransformをF8キーでデバッグしてみると、Rotationずっと不変です。

プレイヤーのカメラが一人称のPawnの場合です。

  • LocationはGet Player PawnのActor Transform値を使用する。
  • RotationはGet Player ControllerのControl Rotationの値を使用する。

1. セーブ時

  1. [Get Player Pawn] -> [Get Actor Transform] して、[Break Transform]をしたらLocationだけを取得。
  2. [Get Player Controller] -> [Get Controll Rotation] をしたらReturn Valueだけを取得。

[Make Transform]でLocationとRotationにそれぞれセットします。Scaleはデフォルトでもいいでしょうし、とりあえず[Get Player Pawn]のScaleを接続するでもいいと思います。

2. ロード時

[Break Transform]して、

  1. Transformごと[Get Player Pawn] -> [Set Actor Transform]にセットしてしまう。
  2. [Break Transform]してRotationを[Get Player Controller] -> [Set Controll Rotation]にセットする

管理人が読んだおすすめの建築本

    

コメントを残す