상업용 게임 필수 기능: 키 리매핑 시스템은 상업용 게임에서 플레이어들이 기대하는 필수적인 기능으로 강력히 권장됩니다. 🎮
언리얼 엔진 5 Enhanced Input 활용: 언리얼 엔진 5의 Enhanced Input 시스템을 기반으로 하며, 특히 Enhanced Input User Settings를 통해 키 리매핑을 구현합니다. ⚙️
프로젝트 설정 활성화: 프로젝트 설정 > Enhanced Input > User Settings에서 사용자 설정을 활성화하는 것이 첫 단계입니다. ✅
매핑 컨텍스트 등록: 캐릭터 컨트롤러 또는 캐릭터 블루프린트에서 Enhanced Input Local Player Subsystem을 통해 기본 Input Mapping Context가 등록되었는지 확인하고, 필요시 등록해야 합니다. 📝
UI 위젯 구성: 메인 설정 위젯(WB_Settings)은 모든 컨트롤 목록을 표시하고, 개별 키 리매핑 위젯(WB_KeyRemap)은 특정 액션에 할당된 키를 표시하며 재설정 기능을 제공합니다. 📜
키 정보 추출 및 표시: Get Active Key Profile과 Get Player Mapping Groups를 사용하여 현재 활성화된 키 할당 정보를 가져오고, Player Mappable Key Settings의 Display Name을 활용하여 UI에 표시합니다. 🏷️
첫 번째 키 리매핑: 하나의 액션에 여러 키가 할당될 수 있지만, 이 시스템은 액션에 할당된 첫 번째 키를 찾아 리매핑하는 데 중점을 둡니다. 🥇
키 리매핑 로직: Input Key Selector로 새로운 키 입력을 받고, Enhanced Input User Settings의 Map Player Key 함수를 사용하여 기존 키를 새 키로 재매핑하며, 이때 Slot을 First로 설정하는 것이 중요합니다. 🔄
설정 저장 및 적용: Apply Settings와 Save Settings 함수를 호출하여 변경된 키 설정을 즉시 적용하고 영구적으로 저장합니다. 💾
리셋 기능: Reset 버튼 클릭 시, 해당 키 매핑을 기본값으로 되돌리는 기능을 구현합니다. ↩️
UI/UX 고려사항: 설정 메뉴를 열고 닫을 때 마우스 커서 가시성 및 입력 모드를 적절히 전환하여 사용자 경험을 개선합니다. 🖱️