Unreal Engine 특정 액터 충돌 무시하는 방법

개요

개발 중인 게임에 주기적으로 투사체를 플레이어에게 발사하는 적 캐릭터를 추가 했습니다. 적 자체와 플레이어의 충돌을 감지하기 위해 Capsule Component 가 포함되어 있었습니다. 여기에 투사체를 발사하도록 공격 방법을 추가했는데 둘 간의 간섭이 발생했습니다.

문제

적이 플레이어를 감지해서 투사체를 발사하기 전까지는 문제가 없었습니다. 투사체에 플레이어가 맞았을 경우의 처리를 위해 로직을 변경하다 보니 발생한 문제 였습니다. Collision Presets 관련한 부분을 조정해서 원하는 이벤트가 발생하도록 했습니다. 이렇게 하니 적과 적이 스스로 생성한 투사체가 서로 충돌하는 현상이 있었습니다. 이런 유형의 문제를 해결하는 방법을 알아보도록 하겠습니다.

Object Channels 항목 추가

Project Settings > Engine > Collision 선택해서 다음과 같이 Object Channels 항목을 추가합니다(EnemyProjectile).

Object Channels 항목 추가

Object Type 변경

다음과 같이 투사체 블루프린트의 Collision Presets 는 Custom, Object Type은 EnemyProjectile 로 설정합니다.

Object Type 설정

적 블루프린트에서 EnemyProjectile 무시 하도록 설정

투사체를 생성하는 적 블루프린트의 Collision Presets 는 Custom, Collision Responses > EnemyProjectile 항목은 Ignore 로 선택하면 됩니다. 이렇게 하면 투사체를 생성한 적과 투사체가 서로 충돌하지 않게 됩니다.

추가된 EnemyProjectile Ignore 설정

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Time limit is exhausted. Please reload the CAPTCHA.