반응형
Projects :
- 각각의 게임을 이루는 콘텐츠와 코드 전부가 들어 있는 유닛, 디스크상의 디렉터리 세트와 일치한다.
Objects :
- 언리얼 엔진의 기본 구성 요소를 오브젝트라고 하며, 거기에는 게임 에셋에 대한 본질적인 "내부성" 함수가 다수 포함된다.
Classes :
- 언리얼 엔진 게임 제작에 사용되는 특정 액터 또는 오브젝트의 작동방식 및 프로퍼티를 정의한다.
- 계층 구조식으로 되어있어서 그 정보를 상속 가능하다.
- C++ 또는 블루프린트에서 생성 가능하다.
Actors :
- 레벨에 배치할 수 있는 오브젝트를 말한다.
- 이동, 회전, 스케일과 같은 3D 트래스폼을 지원하는 범용 클래스이다.
- 액터는 게임 플레이 코드(C++ 또는 블루프린트)를 통해 생성 및 소멸 가능하다.
Components :
- 액터에 추가시킬 수 있는 함수성 조각이다.
- 독립적으로 존재할 수는 없어서 액터에 추가시키면 비로소 존재한다.
Pawns :
- 액터의 서브클래스이다.
- 게임 내 아바타 또는 페르소나 역할을 하며, 게임에서의 캐릭터를 예로 들 수 있다.
- 폰은 플레이어 또는 NPC 형태로 AI의 제어를 받을 수 있다.
- 제어를 받을 때 Possess(빙의)되었다고 간주한다.
Characters :
- 폰 액터의 서브클래스이며 플레이어의 캐릭터에 쓰인다.
- 캐릭터 서브클래스에는 콜리전 셋업, 이족 보행을 위한 입력키 바인딩, 플레이어가 제어하는 이동에 대한 부가 코드 등이 포함된다.
PlayerController :
- 플레이어 입력을 받아 게임 내 상호작용으로 변환하는 데에 사용되는 베이스 클래스이다.
- 모든 게임에는 최소 하나의 플레이어 컨트롤러가 있다.
- 종종 게임 내 플레이어의 표상으로 폰 또는 캐릭터를 빙의한다.
- 멀티플레이어 게임일 때 모든 플레이어에 대해 하나의 플레이어 컨트롤러 인스턴스를 갖는다.
- 각 클라이언트는 자기 플레이어에 해당하는 플레이어 컨트롤러만 가지며, 이를 통해서만 서버와 통신할 수 있다.
AIController :
- 플레이어 컨트롤러와 같이 NPC의 표상으로 폰을 빙의한다.
- 별도로 만들어 주지 않으면 기본값을 갖는다.
Brushes :
- 레벨 지오메트리(BSP) 및 게임플레이 볼륨을 정의하기 위해 레벨에 배치하는 3D 볼륨을 말한다.
- 이를 사용하여 게임플레이 테스트용 레벨 프로토타입 또는 기본적인 윤곽 작업을 한다.
Levels :
- 게임플레이에 사용자 정의된 영역이다.
- 레벨 안에 액터를 배치하고, 틀랜스폼을 적용한 뒤 프로퍼티를 편집하는 것이다.
- 다른 말로 맵이다.
World :
- 로드된 레벨 목록이 들어있다.
- 레벨 스트리밍 및 동적인 액터 스폰을 처리한다.
GameModes :
- 플레이중인 게임의 규칙 설정을 담당한다.
- 프로젝트 세닡에서 기본 게임 모드 설정이 가능하지만, 레벨 단위로 덮어쓸 수 있다.
- 레벨당 항상 단 하나의 게임모드가 존재한다.
- 멀티플레이어 게임에서는 서버에만 존재하며, 규칙은 리플리케이션을 통해 접속된 각 클라이언트에게 전송된다.
GameStates :
- 게임의 모든 클라이언트에게 리플리케이트하고자 하는 정보가 들어있다.
- 게임의 상태를 말한다.
- 예를들어 게임 점수, 경기 시작 여부, 월드의 플레이어 수에 따라 스폰시킬 AI 수 등등이 있다.
- 멀티플레이어 게임의 경우, 각 플레이어의 머신마다 이 인스턴스가 하나씩 있으며, 서버의 인스턴스가 오소리티가 된다.
PlayerStates :
- 사람 플레이어 또는 플레이어를 흉내내는 봇과 같은 게임 내 참여자의 상태를 나타낸다
- 플레이어가 아닌 AI의 경우 플레이어 스탯은 없다.
- 예를 들어, 플레이어 이름, 점수, 현재 레벨 또는 생명력 등등이 있다.
- 멀티플레이어 게임의 경우, 모든 플레이어에 대한 PlayerState은 PlayerController와 달리 모든 머신에 존재한다.
- 서버에서 클라이언트로 프로퍼티를 리플리케이트하여 동기화 상태 유지가 가능하다.
728x90
반응형