본문 바로가기
Unreal/Manual

Unreal 충돌 이벤트 (Collision Event)

by Dev_카페인 2023. 8. 28.
반응형

[Unreal] 충돌 이벤트 (Collision Event)

 

Unreal에서 충돌의 반응은 무시(Ignore), 겹침(Overlap), 블록(Block) 세 가지가 있다.

 

충돌 반응에 따라 발생하는 이벤트가 다르니 숙지해 놓는 것이 좋다.

 

블록(Block) : 두 물체의 반응이 모두 블록으로 설정된 경우에만 블록이 발생한다.

   ▶ 두 물체에 대해 모두 OnHit 이벤트가 호출된다. OnHit 이벤트는 두 물체가 서로 충돌하는 순간 서로의 경로를 막을 때마다 호출된다.

   ▶ 두 물체 중 하나가 피직스를 시뮬레이션 할 경우에는 해당 물체의 SimulationGeneratesHitEvents 속성을 True로 설정해야 한다.

   ▶ 두 물체는 물리적으로 서로가 이동하는 경로를 막는다.

 

겹침(Overlap) : 두 물체는 서로를 막지도 않고 무시하지도 않으며 서로 겹친다.

   ▶ 두 물체 모두 GenerateOverlapEvents 속성이 True로 설정되어 있으면, 두 물체에서 OnBeginOverlap 이벤트와 OnEndOverlap 이벤트가 호출된다. 이 이벤트들은 각각 한 물체가 다른 물체와 겹치기 시작할 때, 종료할 때 호출된다. 두 물체 중 하나라도 GenerateOverlapEvents 속성이 False라면 이 이벤트들은 호출되지 않는다.

   ▶ 두 물체는 서로가 존재하지 않는 것처럼 서로에 대해 겹치도록 동작한다.

 

무시(Ignore) : 두 물체 중 하나가 다른 물체를 무시하면 두 물체는 서로 무시한다.

   ▶ 두 물체에 대해 아무런 이벤트도 호출되지 않는다.

   ▶ 겹침(Overlap) 반응과 비슷하게 두 물체는 서로가 없는 것처럼 동작하며 겹친다.

 

 

물체간 충돌에는 두 가지 측면이 있다.

 

피직스(Physics) : 공이 중력에 영향을 받고 바닥과 벽에서 튀어 오르는 등 물리와 관련된 모든 충돌

   ▶ 두 물체 모두 다른 물체가 없는 것처럼 궤적을 계속 이어 나간다. (물리적 충돌 없음)

   ▶ 두 물체가 충돌하고 궤적을 변경하며, 일반적으로 적어도 한 물체는 계속 이동한다. 서로의 경로를 막는다.

 

쿼리(Query) : 충돌 이벤트 및 개체가 서로 움직임을 차단하는지

   ▶ 두 물체의 충돌과 관련된 이벤트는 추가 로직을 만드는데 활용할 수 있다.  OnHit, OnBeginOverlap, OnEndOverlap 이벤트 등이 있다.

   ▶ 두 물체 모두 다른 물체가 없는 것처럼 궤적을 계속 이어 나간다. (물리적 충돌 없음)

   ▶ 두 물체가 서로 충돌하며 서로의 경로를 막는다.

 

 

피직스(Physics) 기반으로 하는 물리적 반응은 한 물체가 피직스 시뮬레이션중인 경우에만 적용된다. 반면에 쿼리(Query)를 기반으로 하는 물리적 반응은 피직스 시뮬레이션 중이 아닌 모든 물체에 적용된다. 어떤 물체를 코드로 제어하는 경우 피직스 시뮬레이션을 사용하지 않고도 이동시킬 수 있다.

 

 

반응형

'Unreal > Manual' 카테고리의 다른 글

Unreal C++ vs 블루프린트  (0) 2023.10.05
Unreal Collision  (0) 2023.08.28
Unreal Break Hit Result  (0) 2023.08.27
Unreal Collision 설정  (0) 2023.08.25
Unreal BP Trace  (0) 2023.08.25