ゲームを停止させた状態でカメラを自由に動かし、スクリーンショットの撮影が出来る
いわゆるフォトモードを作成しています。
しかし Set Game Paused ノードでゲームを一時停止させた状態では、アクターのlocationを操作する命令全般が機能せず、カメラを動かす手段が見つかりません。
Game Pause 中でも特定のアクターの移動を許可したり、強制的に移動させたり出来る機能はありますでしょうか。
よろしくおねがいします。
ゲームを停止させた状態でカメラを自由に動かし、スクリーンショットの撮影が出来る
いわゆるフォトモードを作成しています。
しかし Set Game Paused ノードでゲームを一時停止させた状態では、アクターのlocationを操作する命令全般が機能せず、カメラを動かす手段が見つかりません。
Game Pause 中でも特定のアクターの移動を許可したり、強制的に移動させたり出来る機能はありますでしょうか。
よろしくおねがいします。
いくつかの方法で可能だとは思うのですが、
まず、Tick でアクターの Location を制御する方法ですと、bTickEvenWhenPaused が true であれば Pause 中に Tick が動作するようになります。
“Class Defaults” もしくは BP/C++ から有効にすることが可能です。
入力ノードから制御する場合は、Input ノードの Execute when Paused が有効であれば Pause 中に動作するようになります。
UWorld* world = GetWorld();
world->IsPaused();
Thank you for your response. Can this be operated with a controller pad?
回答ありがとうございました。
I don’t know if it supports controls other than mouse
Thanks for the answer. I’ll give it a try.
TickでPAUSE中にAddActorWorldOffsetを与え続けてアクターを移動させることができました。
しかし追従したカメラの視点(Set View Target でプレイヤーから乗り換えたゲーム視点)まではその場から動かず、PAUSEを解くとアクター位置にとびます。
視点まで動かすのは難しいのでしょうか。
カメラの座標は LevelTick.cpp の中で “PlayerController->UpdateCameraManager” が呼ばれて更新されています。
ありがとうございました! 解決しました