유니티 vs 언리얼
- 언리얼 공식문서에서 "유니티 개발자를 위한 언리얼 엔진4"라는 탭을 만들어 유니티 개발자들이 유니티에서 사용하던 개념들을 언리얼에 있는 개념과 매핑할 수 있도록 친절하게 만든 문서가 있습니다. 일단 여기에서 설명된 표를 따르면 다음과 같습니다.
카테고리 | 유니티 | 언리얼 엔진4 | 비고 |
게임 플레이 유형 | Component | Component | |
Game Object | Actor / Pawn | 1 : 2 | |
Prefab | Blueprint Class | ||
메시 | Mesh | Static Mesh | |
Skinned Mesh | Skeletal Mesh | ||
머티리얼 | Shader | Material / Material Editor | 1 : 2 |
Material | Material Instance | ||
이펙트 | Particle Effect | Effect / Particle / Cascade | 1 : 3 |
Shuriken | Cascade | ||
게임 UI | UI(uGUI) | UMG | |
프로그래밍 | C# | C++ | |
피직스 | Raycast | Line Trace / Shape Trace | 1 : 2 |
Rigid Body | Collision / Physics | 1 : 2 |
- 표를 보면 알겟지만, 상당히 많은 부분이 닮아있지만 용어가 조금씩 다르고 유니티 측에서는 1개인것이 언리얼에서는 2개 3개인 것이 있다. 오늘은 그중에 GameObject 쪽을 한번 살펴보도록합시다.
Actor
- 액터는 언리얼 엔진의 레벨에 배치할 수 있는 오브젝트를 의미합니다. 그야말로 GameObject처럼 레벨에 배치할 수 있는 모든 오브젝트를 의미하며 여기에 컴포넌트들을 붙여서 액터가 어떻게 행동할지 결정해준다는 느낌이다.
그런데 GameObject와 비슷하다면 Pawn은 뭘까?
Pawn
- 폰은 플레이어나 AI가 제어할 수 있는 모든 액터의 베이스 클래스입니다.
- 게임을 하게되면 내가 조작할 수 있는 오브젝들이 있습니다. 대표적으로 내가 키보드를 통해 움직임을 명령하는 캐릭터와 같은 플레이어(혹은 AI)가 명령을 내리고 그것에 따라서 움직이는 액터들을 Pawn이라고 합니다. 따라서 Actor보다 더 구체적으로 정의된 오브젝트 클래스라는 것이다. 그럼 소스에서 한번 APawn의 정의 타고 들어가보자.
- 위와 같이 Pawn 클래스를 생성하면 자동으로 상속받아지는 APawn이라는 클래스를 타고 들어가보면, AActor클래스를 상속받는 다는 것을 알 수 있다. AActor는 모든 액터 클래스의 베이스 클래스 이므로 Pawn은 '조금 더 구체적인 액터'인 것이다.
- 이 외에도 Character라는 클래스가 있는데 이 클래스의 경우 APawn에서 좀 더 복잡한 애니메이션을 위해 파생된 클래스라고 보면 된다. 예를들어 점프, 수영, 앉기, 하늘을 날아다닌다는 등의 애니메이션들과 그 애니메이션들을 블렌딩하는 작업 등등 복잡한 애니메이션을 처리할 수 있도록 고안되어있는 클래스라고 생각하면된다.
'DevLog > Unreal Engine' 카테고리의 다른 글
언리얼 엔진4 모바일 렌더링, 이것만 기억하세요 (0) | 2021.02.05 |
---|---|
[UE4 게임플레이 프레임 워크] 게임 모드와 게임 스테이트 (0) | 2021.02.01 |
UE4 인터페이스(Interface) (0) | 2021.01.23 |
UE4 C++ FORCEINLINE을 활용한 Enum 클래스 디버깅 (0) | 2021.01.18 |
UE4 컨트롤러 입력이 안먹는경우(미세먼지 팁) (0) | 2021.01.10 |