この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:1
ページ更新者:T
更新日時:2025-03-09 05:05:17

タイトル: ポーンをスポーンさせても視点を切り替えない方法
SEOタイトル: UE5でポーンをスポーンさせても視点を切り替えない方法

Unreal Engine 5(UE5)でゲームを開発する際、ポーンをスポーンさせると、デフォルトの設定ではカメラの視点が自動的に新しいポーンへ切り替わってしまいます。これはゲームの仕様によっては望ましくない場合があり、例えばマルチプレイヤーゲームで特定のポーンをスポーンさせても、プレイヤーの視点を変更したくないといったシナリオが考えられます。

なぜ視点が切り替わるのか?

UE5では、新しいポーンをスポーンすると、Auto Possess PlayerまたはAuto Possess AIの設定によって、自動的にカメラのフォーカスが移る仕組みになっています。特に「プレイヤー0」に設定されている場合、スポーン直後にそのポーンがカメラを持つようになります。

視点を切り替えない方法

視点を変更せずにポーンをスポーンさせる方法はいくつかあります。

● Auto Possess Playerを無効にする

ポーンの設定にある「Auto Possess Player」を「Disabled」に設定することで、プレイヤーの視点が新しいポーンに切り替わるのを防ぐことができます。

● スポーン時に制御を変更する

以下のようなブループリントやC++コードを使用して、新しいポーンをスポーンした後に現在のプレイヤーのコントロールを維持することができます。

ブループリントの場合:

1. 「Spawn Actor from Class」ノードを使って新しいポーンを生成する。

2. 生成したポーンの「Possess」ノードを使用せず、手動でコントロールを設定する。

C++コードの場合:

APawn* NewPawn = GetWorld()->SpawnActor(PawnClass, SpawnLocation, SpawnRotation); APlayerController* PlayerController = GetWorld()->GetFirstPlayerController(); // 既存のプレイヤーが現在のポーンを保持するように設定 PlayerController->SetViewTargetWithBlend(ExistingPawn, 0.0f);

● PlayerControllerのViewTargetを変更する

スポーン後に明示的に現在の視点を変更し、既存のカメラを維持する方法も有効です。

ブループリントの手順:

1. 「Get Player Controller」ノードを取得

2. 「Set View Target with Blend」ノードを使用し、カメラを既存のポーンに固定

まとめ

UE5では、新しいポーンをスポーンすると自動的に視点が切り替わりますが、「Auto Possess Player」の設定変更や「Set View Target」の活用により、意図しない視点変更を防ぐことができます。ゲームの仕様に応じて適切な方法を選択し、快適なプレイ体験を実現しましょう。