프로젝트에서 무기 시스템을 구현하면서 처음에는 권총, 라이플, 샷건처럼 정해진 무기만 처리하면 충분했다. 하지만 무기가 늘어날수록 문제가 생겼다. 새 무기를 추가할 때마다 캐릭터 코드의 switch 문을 수정하고, 무기별 데이터 변수를 새로 만들고, 애니메이션 처리도 계속 추가해야 했다.이번 글에서는 기존 무기 장착 구조의 문제점을 정리하고, DataTable과 TMap을 이용해 무기 추가가 더 쉬운 구조로 개선한 과정을 정리한다.기존 구조의 문제기존 코드는 무기 타입에 따라 각각 다른 FDataTableRowHandle을 선택하는 방식이었다.FDataTableRowHandle SelectedWeaponData;switch (NewWeaponType){case EWeaponTypes::Pistol: ..