기획자가 설정한 문제를 플레이어가 해결하도록 설계된 Game Content에서, 시각적인 요소를 제공하는 것도 중요하지만 기획의 의도대로 액터가 상호작요하도록 물리엔진을 설정하는 것도 중요한다.
Collision 을 통해 물리 충돌 영역을 설정하는데, UE에서 크게 세 가지 방법이 존재한다.
Static Mesh Asset
Primitive Component
Physics Asset
단순히 blocking하는 것에 그치지 않고 플레이어가 레벨과 상호작용하기 위해, 물리엔진의 세부적인 설정을 활용해야 한다.
Collision channel과 기본 반응
Collision channel의 용도
다른 Collision channel과의 반응
Collision Channel은 객체 간 상호작용을 정의하는 데에 매우 중요한 개념이다.

실제 에디터에서 프로젝트 세팅에서 찾아보면 알 수 있듯,
두 가지로 보이는데
collision 영역에 지정하는 채널이다. 객체의 유형이며, 각 객체는 자신의 OC와 다른 OC에 대한 반응 (Block/Overlap/Ignore)을 설정할 수 있다.
객체가 아니라 행동에 설정하는 채널이다. raycast나 trace 작업에 사용되며 특정 유형 객체와의 상호작용을 세밀한 제어를 가능하게 한다.
콜리전 채널 설정
Query: 두 물체에 대해 Overlap, Raycast, Sweep에 관해 사용
Physics: 물리 시뮬레이션 사용
Query and Physics: 위 두 기능을 모두 사용하지만 믈리 엔진이 수행할 계산량이 많아 높은 오버헤드

TO DO: 프로젝트에서 사용할 나의 Character 클래스에 대한 채널과, 충돌을 통해 공격 판정을 지정할 수 있도록 Attack 과 관련한 Trace Channel을 만들어보자!
Object Channel에 새로운 채널을 추가한다.
Preset에 또한 채널을 추가한다.
기존에 존재하는 타 Preset 내 채널들에 대해서,
새로 추가한 채널에 대한 적절한 상호작용에 맞춰서 설정을 해준다.
이렇게 채널을 설정하여 직접 클래스에 이제 추가해보면, 클래스 생성자에 채널 세팅에 관한 코드를 추가하면 된다.
// setting for collision channel
GetCapsuleComponent()->SetCollisionProfileName(TEXT("MIRACharacter"));
}
우선 이런 식으로 채널들을 추가 및 관리해보았다.
이 채널을 이용한 충돌 상호작용은 다음에 다루겠다.