久しぶりにゲーム開発を試してみようと、Unreal Engine 5で開発する過程でプレイヤーが壁面に近づいた状態で反転させるとレベルに沈み込むの動作に少しハマったので備忘録的に投稿します。
壁面に近づいた状態で反転するとレベルに潜り込む
Unreal Engineで、実行中にプレイヤーをコリジョン設定があるアクターの近くでキャラクターを反転させると視点が暴れてレベルやアクターに埋もれてしまうことがあります。
大抵の場合、この現象はカメラを追加しているSpringArmが、他のアクターと干渉した状態になるのが原因です。
この他にも、ジャンプ操作で着地の際にレベルに埋もれてしまう現象もあります。詳しい内容は、別記事をご覧ください。
カメラをSpringArmに追加している場合は、一時的に無効にすることで回避ができます。
効果を確認するには、キャラクターのブループリントの[コンポーネント|SpringArm]を選択して[詳細]画面に表示される[Do Collision Test]をオフにします。
この状態で、実行して壁面などでキャラクターを反転させても視点が暴れなければ、この設定をブループリントのグラフで行うことで対処が可能です。
色々条件はありますが、壁面に使用しているアクターを検出してプレイヤーとの距離がしか過ぎたら[Do Collision Test]をオフにするような感じで対処が可能です。
まとめ
今回は短い記事になりましたが、Unreal Engine 5で開発する過程でプレイヤーが壁面に近づいた状態で反転させるとレベルに沈み込むの動作の対処法について書きました。
キャラクター(プレイヤー)のカメラが[SpringArm]が追加されている場合[Do Collision Test]の設定をオムにすると改善する場合があります。
Unreal Engine でプレイヤーを壁面から反転させるとレベルに潜り込んでしまう人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。


