반응형
무기만 예시로 살펴보면
픽업 아이템을 주으면 장비의 EquipItem 또는 UnequipItem 함수를 호출하게 한다.
이를 구현해준다.

이러한 장비 아이템을 설정할 때 중요한 점은, 아이템에 콜리전이 없어야 한다.

장비는 콜리전을 설정하지 않고, 공격이라는 이벤트가 발생할 때에만 콜리전을 잠깐 켰다가 끄는 방식으로 동작해야 한다.
즉, 캐릭터가 소유한 시점에서 장비는 그냥 보여지기는 용도로만 기능한다.
장비는 어떤 장비인지에 따라 장착 위치가 다르다.
한손검, 양손검일 때 다르고, 주 무기와 보조무기일 때 다르고, 투구와 상의, 하의 등 모두 부착 위치가 제각각이다.
이를 고려할 때, "장비마다" 다르다는 것을 통해 캐릭터가 아닌 장비가 자신이 어디에 부착되어야 하는지를 프로퍼티로 지정하는 것이 바람직하다.

특정 메시에 위치를 지정하는 기능을 "소켓"이라고 한다. 우리는 이 소켓 네임을 기반으로 장착될 무기가 그려질 위치를 결정한다.
소켓의 이름은 에디터에서 지정해준다.

어태치 함수를 사용하여 캐릭터의 스켈레탈 메시에 지정된 소켓에 붙인다.

스켈레톤에서 소켓 위치를 설정해준다.
스켈레톤의 뼈 구조에서 위치, 회전을 통해 장비가 어디에 붙어야 하는지를 눈으로 보면서 조절할 수 있다.

소켓을 추가한 뒤, 프리뷰 메시를 선택해서 무기를 직접 보면서 위치 조정이 가능하다.


반응형
'Unreal Engine > 기능 구현' 카테고리의 다른 글
| [Unreal Engine 5] 물리 기반 사망 처리 : Ragdoll (0) | 2025.10.18 |
|---|---|
| [Unreal Engine 5] 공격 판정 및 적용 (0) | 2025.10.17 |
| [Unreal Engine 5] 픽업 아이템 줍기(Pickup Item) (0) | 2025.10.17 |
| [Unreal Engine 5] Input Action(인풋 액션) : 길게 누르기(Hold) (0) | 2025.10.17 |
| [Unreal Engine 5] 중복 키를 통한 액션 설정 (0) | 2025.10.17 |
