맡은 UI 중에서 유일한 인게임이었는데 제일 많은 시간을 쓰고 수정도 엄청 했다...
하나 연결하면 다른 부분 다 수정해야하고 무기 담당 조원분과 파일 충돌도 나고
다른 분의 파일에 코드를 추가하면서 혹시나 에러날까봐 노심초사 했다...

📎 Weapon Data Assets and Inheritance, Data Driven Game Design in Unreal Engine 5
영상 참고해서 총기 별로 데이터 에셋을 만들었지만 나중에 준모님의 데이터 테이블과 WeaponText 연동이 안돼서 나중에 다시 만들었다.
📎 Create This Weapon Tray UI in Unreal Engine 5?
영상을 참고해서 위젯 블루프린트 만들었다
이전 총기, 현재 총기를 보여주는 애니메이션을 만들었지만 쓸 일이 없어서 삭제
텍스트나 이미지는 ☑ Is Variable 하기
[WeaponTray]
└─ Canvas Panel
└─ TrayAnchor
└─ TrayContent
└─ Border
└─ Overlay
└─ Vertical Box
├─ Ammo Tray
│ ├─ CurrentAmmoText ("99") ☑
│ ├─ "/" (구분자)
│ └─ ReserveAmmoText ("5,000") ☑
└─ Scale Box
└─ RetainerBox_0
└─ WeaponImage ☑
└─ Name and Fire Mode
├─ WeaponNameText ("Shotgun") ☑
├─ "|" (구분자)
└─ FireModeText ("Single") ☑

지금까지 본 강의에서는 모두 데이터 테이블을 사용했지만 유튜브 스승님께선 PDA를 사용하셔서 나도 그렇게 만들었다.
둘의 차이는 뭘까..?
📎 Epic Games Developer
📎 [Architecture] DataAsset과 Asset Manager
| 항목 | Primary Data Asset | Data Table |
|---|---|---|
| 저장 방식 | .uasset 파일 | .uasset + CSV/JSON |
| 데이터 단위 | 개별 에셋(오브젝트 단위) | 행렬(레코드 모음) |
| 타입 안정성 | 강함 (클래스 기반) | 구조체 기반, CSV는 덜 안전 |
| 에디터 편집 | 블루프린트 방식 | 스프레드시트 방식 |
| 적합 용도 | 무기, 아이템, 퀘스트 등 개별 설정 | 대사집, 스탯표, 대량 데이터 |
| 로드 관리 | Asset Manager 활용 쉬움 | 대량 데이터 일괄 로드 |

PDA 만들고 데이터 에셋 생성하니까 준모님이 만드신 데이터 테이블이랑 연동이 안됨
코드로 연동 먼저 하고 데이터 에셋 다시 생성 후 데이터 테이블에 추가!

위젯을 뷰포트에 띄우는 함수 생성 후 노트 연결

이후 작업은 위젯의 데이터들 제대로 연동되게 하기 🥲