1. Pawn 이란?
Pawn이란, 월드 내 플레이어에 대한 물리적 표현이다.Pawn클래스는 플레이어나 AI가 제어할 수 있는 모든 액터의 베이스 클래스- 플레이어나 AI 개체의 시각적인 모습 뿐만 아니라 콜리전이나 기타 물리적 반응 같은 측면에서 월드와의 상호작용 방식도
Pawn이 규정한다는 뜻 - 특정 유형 게임에선 게임 내에 눈에 보이는
플레이어 메시나아바타가 없기에 헷갈릴 수 있으나
그와 무관하게Pawn은 여전히 게임 내플레이어나개체의물리적인 위치,방향등을 나타낸다.
2. Default Pawn
Pawn클래스가 월드의 플레이어나 AI 개체의 물리적 표현을 만드는 데 있어 필요한 것만 제공해 주는 반면
DefaultPawn서브클래스에는 추가적인컴포넌트와함수성이 딸려 온다.- ‘DefaultPawn` 클래스에는 아래 내용이 포함되어 있다.
- 네이티브
DefaultPawnMovementComponent - 구체형
CollisionComponent,StaticMeshComponent - 카메라 제어
- 기본 이동 바인딩 추가를 위한 bool (기본값 true)
- 네이티브
- ‘DefaultPawn` 클래스에는 아래 내용이 포함되어 있다.
DefaultPawnMovementComponent
DefaultPawnMovementComponent에 대한 기본 이동 스타일은무중력 비행으로 설정되어 있다.- 보통의
MovementComponent변수 외에MaxSpeed,Acceleration,Deceleration값(float)이 포함되어 있다.MaxSpeed,Acceleration,Deceleration는DefaultPawn파생 블루프린트에서도 접근이 가능하다.
SpectatorPawn
SpectatorPawn클래스는DefaultPawn의 서브클래스이다.GameMode를 통해Pawn과SpectatorPawn에 대해 다양한 클래스를 기본으로 지정할 수 있다.Spectator(관람)에 이상적인 단순한 프레임워크를 제공DefaultPawn과 마찬가지로CollisionComponent가 있으나,DoNotCreateDefaultSubobject(Super::MeshComponentName)구현 때문에StaticMeshComponent는 생성되지 않는다.SpectatorPawn클래스에 대한 이동은SpectatorPawnMovementComponent에서 처리되며,
무중력 비행 동작은DefaultPawnMovementComponent에서와 마찬가지이고, 필요에 따라 시간 지연을 처리하거나 무시할 수 있는 코드가 추가되어 있다