[UE5] 이득우 Part 2. 1강 언리얼 게임 제작 기초

공부 스파이럴·2023년 12월 30일
0

게임 콘텐츠의 구조

  • 게임 제작을 위해 언리얼 엔진은 자체적으로 설계한 프레임워크를 제공

  • 게임
    • 월드, 모드, 상태
  • 기믹
    • 트리거, 스폰, 물리
  • 플레이어
    • 입력, 카메라, HUD, 상태
    • 이동, 모션, 액션, 위젯
  • 데이터
    • 에셋, 테이블, 설정, 저장
  • 인공지능
    • 길찾기, BT

월드

  • 게임 콘텐츠가 담기 위해 제공되는 가상의 공간
  • 월드는 시간, 트랜스폼, 틱을 서비스로 제공
  • 월드 세팅이라는 콘텐츠 제작을 위한 기본 환경 설정을 제공
  • 월드의 기본 단위는 Actor로 정의
    • Actor 클래스는 언제나 접두사 A를 사용
  • 역할
    • 게임 콘텐츠를 담는 공간 (Transform)
    • 게임 콘텐츠의 진행 (Tick)
    • 게임 흐름을 위한 시간 (Time)
    • 기본 환경 설정 (World Setting)
    • 월드의 단위 구성 요소 (Actor)

게임 모드

  • 게임 규칙을 지정하고 게임을 판정하는 최고 관리자 액터
    • 형태 없이 논리적인 단위로만 존재
  • 언리얼 엔진에는 하나의 게임에는 반드시 하나의 게임 모드만 존재
  • 게임 모드에서 입장할 사용자의 규격을 지정 가능
  • 멀티플레이어 게임에서 판정을 처리하는 절대적 권위의 심판 역할
  • 역할
    • 플레이어 입장 관리
    • 게임 최종 승패 관리
    • 게임 규칙 관리
    • 게임 데이터 검증 (멀티플레이 게임)

기믹

  • 게임 진행을 위한 이벤트를 발생시키는 사물 액터
  • 주로 이벤트 발생을 위한 충돌 영역을 설정하는데, 이를 트리거(Trigger)라고 함
  • 트리거를 통해 캐릭터와 상호 작용하고, 월드에 액터를 스폰해 콘텐츠를 전개
  • 역할
    • 월드 내 사물과 상호 작용
    • 지정된 조건을 만족하면 이벤트 발생
    • 월드에 물체를 스폰(Spawn) 가능

플레이어

  • 게임에 입장한 사용자 액터
    • 형태가 없음
  • 게임 모드의 로그인을 통해 사용자가 게임 월드에 입장하면 플레이어가 생성됨
  • 싱글 플레이 게임에는 0번 플레이어가 설정
  • 사용자와의 최종 커뮤니케이션을 담당
    • 예) 입력 장치의 해석, 화면 장치로의 출력
  • 역할
    • 게임에 입장한 사용자와의 1:1 대응
    • 사용자의 현재 상태 및 데이터를 관리
    • 사용자 입력의 1차 처리 (필요시)
    • 사용자 화면에 대응하는 카메라 관리
    • 사용자 화면에 나타나는 HUD UI 관리

폰(Pawn)

  • 무형의 액터인 플레이어가 빙의해 조종하는 액터
  • 길찾기를 사용할 수 있음
  • 기믹 및 다른 폰과 상호작용
  • 인간형 폰을 별도로 캐릭터라고 함
  • 역할
    • 빙의(Possess)를 통해 플레이어와 연결
    • 사용자 입력의 실제 처리
    • 사용자 화면에 대응되는 카메라 설정
    • 기믹과의 상호작용
    • 현재 상태에 적합한 애니메이션 재생

실습

  • 기본 설정
  • 폴더 별 분류
  • 헤더 참조 최소화 규칙
    • include 할 필요가 없어짐
static ConstructorHelpers::FClassFinder<APlayerController> PlayerControllerClassRef(레퍼런스 경로);
	if (PlayerControllerClassRef.Class)
	{
		PlayerControllerClass = PlayerControllerClassRef.Class;
	}

0개의 댓글