[UE4] 언리얼 엔진4 액터(Actor) 완벽 가이드: 게임 월드의 핵심 구성 요소, 초보자도 쉽게 이해하는 방법
액터(Actor) 완벽 가이드: 게임 월드의 핵심 구성 요소, 초보자도 쉽게 이해하는 방법
언리얼 엔진 4(UE4)에서 액터(Actor)는 게임 월드를 구성하는 기본적인 단위입니다. 액터는 게임 월드에 배치되는 모든 오브젝트를 의미하며, 캐릭터, 배경 오브젝트, 라이트, 카메라 등 다양한 요소들을 포함합니다. 이 글에서는 UE4 액터의 개념, 종류, 생성 및 활용 방법을 예제 코드와 함께 자세히 설명합니다.
1. 액터(Actor)란 무엇인가?
액터는 게임 월드에 배치되는 모든 오브젝트를 의미하며, 다음과 같은 특징을 가집니다.
- 위치, 회전, 스케일 정보: 액터는 3차원 공간에서 위치, 회전, 스케일 정보를 가지고 있습니다.
- 컴포넌트 기반: 액터는 다양한 컴포넌트를 조합하여 기능을 확장할 수 있습니다.
- 이벤트 기반: 액터는 다양한 이벤트(예: 충돌, 타이머)에 반응하여 특정 동작을 수행할 수 있습니다.
- 상속 가능: 액터는 다른 액터를 상속받아 기능을 확장하거나 수정할 수 있습니다.
2. 액터의 종류
UE4에서는 다양한 종류의 액터를 제공합니다.
- 기본 액터(Actor): 가장 기본적인 액터 클래스로, 다른 액터들의 기반이 됩니다.
- 폰(Pawn): 플레이어나 AI가 제어하는 캐릭터를 나타냅니다.
- 캐릭터(Character): 폰을 상속받아 만들어진 클래스로, 기본적인 이동 및 애니메이션 기능을 제공합니다.
- 플레이어 컨트롤러(Player Controller): 플레이어의 입력을 처리하고 폰을 제어합니다.
- 게임 모드(Game Mode): 게임의 규칙 및 설정을 정의합니다.
- HUD(Heads-Up Display): 게임 화면에 정보를 표시하는 인터페이스입니다.
3. 액터 생성 및 활용 방법
3.1. 액터 생성
- 콘텐츠 브라우저: 콘텐츠 브라우저에서 우클릭 > Blueprint Class를 선택하고 액터 클래스를 생성합니다.
- 레벨 에디터: 레벨 에디터에서 Place Actors 패널을 사용하여 액터를 레벨에 배치합니다.
- C++ 코드: C++ 코드를 사용하여 동적으로 액터를 생성할 수 있습니다.
3.2. 액터 컴포넌트 추가
- 블루프린트 에디터: 블루프린트 에디터에서 Components 패널을 사용하여 액터에 다양한 컴포넌트를 추가합니다.
- C++ 코드: C++ 코드에서 액터 컴포넌트를 추가하고 설정할 수 있습니다.
3.3. 액터 이벤트 처리
- 블루프린트 에디터: 블루프린트 에디터에서 Event Graph를 사용하여 액터 이벤트를 처리합니다.
- C++ 코드: C++ 코드에서 액터 이벤트를 처리하는 함수를 구현합니다.
3.4. 액터 블루프린트 통신
- 블루프린트 에디터: 블루프린트 에디터에서 Cast 노드 및 함수 호출을 사용하여 액터 블루프린트 간에 데이터를 주고받습니다.
- C++ 코드: C++ 코드에서 액터 블루프린트에 정의된 함수를 호출하거나 변수에 접근합니다.
4. 액터 활용 예시
4.1. 이동 가능한 플랫폼 액터 생성
- 액터 블루프린트 생성
- Static Mesh 컴포넌트 추가 및 플랫폼 메시 설정
- Timeline 컴포넌트 추가 및 이동 애니메이션 설정
- Event Graph에서 Timeline 재생 및 정지 로직 구현
4.2. 플레이어 캐릭터 액터 생성
- 캐릭터 블루프린트 생성
- Skeletal Mesh 컴포넌트 추가 및 캐릭터 메시 설정
- Animation Blueprint 생성 및 캐릭터 애니메이션 설정
- Input Settings에서 이동 및 점프 입력 설정
- Event Graph에서 입력 처리 및 캐릭터 이동 로직 구현