Unreal Engine 5 - Project Shooter (1): Player Controller 생성

mingu Lee·2025년 8월 4일

1. 간단 요약


  • FPS 게임 프로젝트의 전반적인 계획서 작성
  • 프로젝트에서 버전 관리 기능 사용
  • IMC, IA 등 기본적인 Player Controller 생성

2. 세부 과정


  1. 프로젝트 계획
  2. 프로젝트 버전 관리
  3. Player Controller 생성

2-1. 프로젝트 계획


  • 전반적인 게임의 형태
    • 빠르게 클리어하는 것을 목표로 하는 Speed Run 형태의 플레이 스타일.
    • 정해진 경로를 따라 이동하며 목표물 처치.
    • 점수를 기록하여 랭킹 집계.
  • 주요 기능
    • 기본적인 FPS 기능
      • Fire (발사)
        잔탄이 남아있다면 탄환을 발사.
      • Reload (재장전)
        현재 잔탄 수가 최대 잔탄 수보다 적을 경우 최대 잔탄 수로 갱신.
      • Aim (조준)
        총기 가늠자를 중앙에 배치 및 시야 배율 조정.
      • Swap (무기 교체)
        숫자 키를 통한 무기 교체.
      • Run (달리기)
        걸을 때보다 빠른 속도로 이동, 도중에 다른 동작 불가능.
    • 총기 반동
      격발할 때마다 반동이 발생하여 난이도 조절.
    • 소리 효과
      총기와 관련된 효과음, 과녁 생성 및 파괴, 캐릭터 애니메이션에 따른 효과음 등 사운드 추가.
    • 레이저 포인터 기능
      레이저가 총구 방향으로 정해진 거리만큼 그려지도록 세팅.
    • 과녁 시스템
      플레이어가 게임 도중 처치해야할 목표.
      플레이어가 특정 위치에 도달하면 과녁이 등장하고, 탄환에 적중 시 내려감.
    • 랭킹 시스템
      게임 점수를 로컬 데이터로 저장하여 상위 기록 집계.
    • 환경설정 기능
      해상도, 마우스 감도, 밝기 등을 조절할 수 있는 환경설정 창 구현
    • 캐릭터 애니메이션
      각 동작마다 적절한 애니메이션이 출력될 수 있도록 설계

2-2. 프로젝트 버전 관리


개발 과정 로그를 남기고, 예기치 못하게 프로젝트 데이터가 손실되는 것을 방지하기 위해 Editor에서 Revision Control 설정.

각 Asset의 History를 통해 어떠한 작업을 진행했는지 파악하기가 용이.

추후 Github와 연동할 것.

2-3. Player Controller 생성


캐릭터의 조작을 제어할 Controller를 생성하고 Input Mapping Context와 Input Action 생성 및 세팅.

Controller에서 IMC 추가 후, 캐릭터의 Event Graph에서 Input Action Event 동작 구현.

이전에 만들었던 3인칭 플레이의 움직임에서는 카메라 방향과 캐릭터의 방향이 별개였지만, 1인칭에서는 카메라의 방향이 곧 캐릭터의 방향이므로 'Add Movement Input'의 World Direction을 Actor의 Ratation으로 설정.

Look은 기존과 동일.

3. 구현 중 발생한 문제 및 해결방안


별다른 문제 발생 없음.

4. 오늘의 결과물


1인칭에서의 기본적인 움직임 구현 완료.

다음엔 과녁, 총기, 점수 등의 시스템을 구현할 예정.

profile
Github: https://github.com/dlalsrn

0개의 댓글