게임플레이 파이프라인

여기서 보여드리는 방법은 크게 두 가지, 에디터 방법과 독립형 방법입니다.

일반적인 이벤트 순서는, 엔진을 초기화시키고, GameInstance를 생성 및 초기화한 뒤, 레벨을 로드하고, 마지막으로 플레이를 시작합니다. 하지만 독립형 모드와 에디터 모드 사이의 차이점이 있는데, 일부 함수가 호출되는 정확한 순서와, 어떤 함수가 호출되는지가 다릅니다. 아래 플로우 차트는 두 방법으로 병렬 실행했을 때 게임 시작 전 수렴할 때까지의 흐름을 보여줍니다.

[그림 1] UE4 Gameply Flow Chart

 

독립형(StandAlone)

독립형 모드는, 에디터 외부에서 플레이하는 게임 모드로, 시작시 엔진 초기화에 이어 바로 게임 플레이에 필요한 오브젝트가 생성 및 초기화됩니다. GameInstance와 같은 오브젝트는 (Engine 생성 및 초기화와 별개로) 엔진 시작 전 생성 및 초기화되며, 엔진의 시작 함수 호출 직후 시작 맵이 로드됩니다. 공식적으로 게임플레이가 시작되는 시점은, 레벨이 적합한 게임모드와 게임 스테이트에 이어 다른 액터를 생성한 이후입니다.

에디터(Editor)

에디터 모드는 에디터에서 플레이에디터에서 시뮬레이트에서 사용되며, 다른 흐름으로 실행됩니다. 엔진은 에디터 실행에 필요하므로 즉시 초기화 및 시작되나, GameInstance와 같은 오브젝트의 생성 및 초기화는 사용자가 버튼을 눌러 PIE 또는 SIE 세션을 실행할 때까지 연기됩니다. 추가로 레벨의 액터를 복제하여 에디터의 레벨에 영향을 끼치도록 하고, GameInstance를 포함한 모든 오브젝트는 각 PIE 인스턴스마다 별도의 사본을 갖습니다. UWorld 클래스의 게임플레이 시작과 함께 에디터 방법과 독립형 방법의 재회가 이루어집니다.

복사했습니다!