소개
게임플레이 카메라 시스템(Gameplay Camera System) 은 개발자와 디자이너가 에디터에서 복잡한 카메라 비헤이비어를 생성할 수 있는 직관적인 방법을 제공합니다.
이는 블루프린트 컴포넌트를 사용하는 기존 워크플로와 달리, 하나 이상의 카메라 릭과 더불어 데이터 에셋 내에 비헤이비어 및 트랜지션을 포함하는 범용 시스템입니다. 이 데이터 에셋을 블루프린트 액터 또는 블루프린트 컴포넌트에서 사용하여 게임플레이 도중 카메라 비헤이비어를 구동할 수 있습니다.
이점
게임플레이 카메라 시스템은 블루프린트 카메라 컴포넌트를 사용하는 기존 워크플로에 비해 몇 가지 이점이 있습니다.
그 이점은 다음과 같습니다.
- 모듈형 디자인.
- 더 간단하게 복잡한 카메라 비헤이비어 생성.
- 커스텀 트랜지션 비헤이비어 생성 기능.
이 시스템은 모듈형으로 디자인되었으며, 카메라 에셋을 하나 이상의 게임플레이 카메라 액터 및 컴포넌트에서 사용할 수 있습니다. 즉, 카메라 비헤이비어를 한 번 제작하여 씬에서 다수의 액터에 사용할 수 있습니다.
이 시스템으로 복잡한 카메라 비헤이비어를 더 쉽게 생성할 수 있으므로, 블루프린트에서 비헤이비어를 스크립팅할 필요가 줄어듭니다. 따라서 코딩에 익숙하지 않은 디자이너도 더 쉽게 이용할 수 있습니다.
게임플레이 카메라 시스템은 C++ 코딩 없이도 카메라 간 커스텀 트랜지션 비헤이비어를 생성할 수 있어 반복작업 속도가 빨라지므로 프로그래머가 다른 작업에 집중할 수 있습니다.
이 시스템에는 게임플레이 도중 카메라 비헤이비어 및 트랜지션을 더 쉽게 디버깅할 수 있는 카메라 디버거 툴이 포함되어 있습니다.
시스템 디자인
게임플레이 카메라 시스템은 다음 컴포넌트로 구성됩니다.
| 컴포넌트 | 설명 |
|---|---|
| 게임플레이 카메라 컴포넌트 | 카메라 에셋을 사용하는 블루프린트 컴포넌트입니다. |
| 게임플레이 카메라 액터 | 게임플레이 카메라 컴포넌트를 포함하는 블루프린트 액터이며 카메라 에셋을 사용합니다. |
| 카메라 에셋 | 카메라 릭, 트랜지션, 카메라 디렉터에 대한 데이터를 포함하는 에셋입니다. |
| 카메라 릭 | 노드 네트워크를 사용하여 카메라 비헤이비어를 정의합니다. |
| 카메라 트랜지션 | 각 카메라 릭의 들어가기 및 나가기 트랜지션을 정의합니다. |
| 공유 카메라 트랜지션 | 트랜지션이 지정되지 않은 경우 모든 카메라 릭이 사용할 수 있는 들어가기 및 나가기 트랜지션입니다. |
| 카메라 디렉터 이밸류에이터 | 카메라 디렉터 이밸류에이터 블루프린트 클래스에 대한 레퍼런스입니다. |
| 카메라 디렉터 | 특정 시점에 어떤 카메라 릭이 활성화되는지를 관리합니다. 디렉터 타입은 다음 중 하나일 수 있습니다. 블루프린트 카메라 디렉터, 단일 카메라 디렉터, 스테이트 트리 카메라 디렉터. |
| 블루프린트 카메라 디렉터 | 게임플레이 도중 활성 카메라 릭을 선택하는 커스텀 로직이 있는 블루프린트 클래스입니다. |
| 단일 카메라 디렉터 | 할당된 카메라 릭을 활성화하며 선택 로직이 없습니다. |
| 스테이트 트리 카메라 디렉터 | 스테이트 트리를 사용하여 활성 카메라 릭을 선택합니다. |
| 카메라 변수 컬렉션 | 카메라 에셋 내 프로퍼티를 수정하는 데 사용되는 변수 컬렉션을 포함합니다. |