"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
👨💻 안녕하세요, 윌리 프로젝트의 윌리 입니다.
언리얼 엔진 에서 콜리전 이벤트의 물체 A, B 간 속성에 따른 응답 형태는 어떻게 되는지 간략히 알아보았습니다.

질문 >
언리얼 엔진 에서 콜리전 이벤트의 물체 A, B 간 속성에 따른 응답 형태는 어떻게 되나요?
답변 >
언리얼 엔진에서 콜리전 이벤트의 물체 A와 B 간 속성에 따른 응답은 콜리전 설정에 의해 결정됩니다. 이 설정은 각 물체의 Collision Preset과 Collision Response를 기반으로 이루어집니다. 주요 개념은 다음과 같습니다:
1. Collision Preset (콜리전 프리셋)
각 물체에는 기본적인 콜리전 동작을 정의하는 프리셋이 있습니다. 몇 가지 예시는 다음과 같습니다:
- No Collision: 충돌을 무시.
- Overlap All: 모든 충돌을 겹침(Overlap)으로 처리.
- Block All: 모든 충돌을 막음(Block).
- Custom: 세부 설정을 사용자가 직접 구성.
2. Collision Channels (콜리전 채널)
콜리전 이벤트는 "채널"을 기반으로 동작합니다. 언리얼 엔진에서 콜리전 채널은 물리적 속성을 나타내며, 기본 채널에는 다음이 포함됩니다:
- WorldStatic: 정적 오브젝트 (예: 벽, 바닥)
- WorldDynamic: 동적 오브젝트 (예: 문, 상자)
- Pawn: 플레이어 또는 NPC
- PhysicsBody: 물리적으로 상호작용하는 객체 (예: 물리 시뮬레이션 물체)
- Vehicle: 차량 관련 물체
- Camera: 카메라 관련 충돌
3. Collision Response (콜리전 응답)
각 물체는 특정 채널에 대해 응답을 설정할 수 있습니다. 응답 유형은 다음과 같습니다:
- Ignore: 해당 채널의 충돌을 무시.
- Overlap: 해당 채널과 겹침 이벤트를 생성.
- Block: 해당 채널의 충돌을 막음.
4. 콜리전 이벤트 유형
물체 A와 B 간의 충돌은 다음 세 가지 주요 이벤트로 발생합니다:
- BeginOverlap: 겹침이 시작될 때 발생.
- EndOverlap: 겹침이 종료될 때 발생.
- Hit: 충돌이 실제로 발생했을 때 발생.
이 이벤트들은 각 물체의 Collision Response 설정에 따라 트리거됩니다.
5. 응답 형태 예제
예제 1: Block vs Block
- 물체 A와 B가 모두 Block 설정이면 충돌이 발생하며, Hit 이벤트가 트리거됩니다.
예제 2: Block vs Overlap
- A가 Block, B가 Overlap으로 설정되면 A는 충돌을 막으려 하고 B는 겹침 이벤트를 발생시킵니다. 따라서 겹침 이벤트(Overlap)가 트리거됩니다.
예제 3: Overlap vs Ignore
- A가 Overlap, B가 Ignore로 설정되면 아무 이벤트도 발생하지 않습니다.
6. 세부 설정 조정 방법
- Blueprint에서:
- 물체의 Details 패널에서 Collision Preset을 설정.
- 필요에 따라 Custom을 선택하고 채널별로 응답을 설정.
- C++ 코드에서:
UPrimitiveComponent* Component = ...; // 대상 컴포넌트
Component->SetCollisionResponseToChannel(ECC_PhysicsBody, ECR_Block);
Component->SetCollisionResponseToAllChannels(ECR_Ignore);
7. 디버깅 도구
- Show Collision: Alt + C를 눌러 콜리전 디버깅을 활성화.
- Visualize Collision Responses: 각 오브젝트의 콜리전 상호작용을 시각적으로 확인.
이러한 설정을 통해 물체 A와 B의 콜리전 이벤트와 응답 형태를 원하는 대로 조정할 수 있습니다.
🎬 유튜브 채널 🎬
위로그@WiLog
📢 안녕하세요, 위로그@WiLog 시청자 여러분, 저는 윌리(Willee) 입니다. 📢 위로그@WiLog 는 자기계발을 목적으로 하는 채널 입니다. 📢 오늘도 즐겁게~ 자신을 위한 계발을 함께 해보아요~ d^_^b 📌
www.youtube.com
🎬 치지직 채널 🎬
위로그 채널 - CHZZK
지금, 스트리밍이 시작됩니다. 치지직-
chzzk.naver.com
'프로그래밍' 카테고리의 다른 글
👨💻 [Unreal] 언리얼 엔진에서 컴포넌트란 무엇이며, 어떻게 활용할 수 있나요? (4) | 2024.12.26 |
---|---|
👨💻 [Unreal] 언리얼 엔진에서 피지컬 머티리얼 이란 무엇이고, 어떻게 활용할 수 있나요? (5) | 2024.12.24 |
👨💻 [MFC] MFC에서 윈도우 창이 포커스를 가지고 있는지 확인하려면 어떻게 해야 하나요? (4) | 2024.12.20 |
👨💻 [MFC] MFC에서 윈도우 창이 최상단에 표시되고 있는지 확인하려면 어떻게 해야 하나요? (3) | 2024.12.20 |
👨💻 [Unreal] 언리얼 엔진 에서 물체 간 충돌의 두 가지 측면인 피직스 (Physics) 와 쿼리 (Query) 는 무엇인가요? (3) | 2024.12.18 |