오늘의 학습 핵심 요약
1. Sphere Collision (구체 충돌체)
- 개념: 보이지 않는 구 형태의 충돌 영역입니다.
- 용도: 플레이어 감지 센서, 폭발 대미지 범위, 아이템 획득 범위 등으로 활용됩니다.
- Tip: 개발 중 범위를 확인하려면 디테일 패널에서 Hidden in Game 체크를 해제하면 게임 실행 중에도 와이어프레임이 보입니다.

2. Cast To (형변환)
- 개념: 부딪힌 물체(Actor)가 정확히 내가 원하는 타입(예: BP_FPSCharacter)인지 확인하는 과정입니다.
- 로직: * 성공: 해당 타입의 기능을 사용할 수 있게 연결됩니다.
- 실패 (Cast Failed): 다른 물체(벽, 적 등)가 닿았을 때 불필요한 로직이 실행되지 않도록 방지합니다.

3. AI Move To & NavMesh
- AI Move To: AI를 특정 목적지나 타겟을 향해 이동시키는 노드입니다.
- NavMesh Bounds Volume: AI가 이동 가능한 '길'을 정의하는 영역입니다.
- 레벨 배치 후 **단축키 [P]**를 누르면 초록색으로 활성화된 이동 가능 영역을 확인할 수 있습니다.

4. 함수(Function) vs 이벤트(Event)
언리얼 블루프린트에서 로직을 묶는 두 방식의 결정적 차이입니다.
- 함수: 반환값(Return Value)을 가질 수 있어 계산에 유리하지만, Delay(지연 시간) 노드를 사용할 수 없습니다.
- 이벤트: 반환값은 없지만 Delay나 타임라인 같은 시간 흐름 제어 노드를 사용할 수 있습니다.
5. Blend Space (블렌드 스페이스)
- 개념: 여러 애니메이션을 수치에 따라 자연스럽게 섞어주는 도구입니다.
- 활용: Speed 변수 값에 따라 Idle(0) → Walk(300) → Run(600) 상태를 부드럽게 전환하여 캐릭터의 움직임을 생동감 있게 표현합니다.
🛠 과제 수행 기록: 총알 아이템 제작
기존에 만든 힐 포션 로직을 응용하여 BP_Item_Ammo를 제작했습니다.
1. 블루프린트 구조
- Root: Sphere Collision (아이템 획득 범위)
- Mesh: Stylised Sniper Bullet
- Variable: AmmoAmount (Integer, 기본값 30)
2. 주요 로직
- OnComponentBeginOverlap 발생 시 플레이어 캐릭터로 Cast To를 수행합니다.
- 캐릭터 블루프린트 내부에 미리 정의한 AddAmmo 함수를 호출하여 탄약 수를 갱신합니다.
- 획득 후 Destroy Actor로 아이템을 제거합니다.

3. 레벨 배치
- 레벨 디자인에 맞춰 3개 이상의 아이템을 배치하여 정상적으로 습득 및 HUD가 갱신되는지 테스트를 완료했습니다.
'TIL' 카테고리의 다른 글
| [Game Project] FPS 개발기: 게임 메커니즘 완성 및 UI 기능 구현 (UE 5.5.4) (0) | 2026.04.24 |
|---|---|
| [TIL] C++ 배열의 평균 구하기 & C언어 반복문과 배열의 기초 (0) | 2026.04.24 |
| [UE5] 타임라인(Timeline)으로 구현하는 부드러운 총기 반동과 에임 복귀 (0) | 2026.04.22 |
| [UE5] 1인 레이드 프로토타입 제작기 (1) - 전투 시스템 기초 설계 (0) | 2026.04.21 |
| [UE5] 레벨 디자인 실습: 장애물 돌파와 상호작용 공간 (0) | 2026.04.16 |