1. 게임 프레임워크
언리얼 엔진은 게임 프레임워크(Game Framework)라는 구조를 갖추고 있습니다.
게임 프레임워크는 표준화된 클래스와 시스템들의 집합입니다.
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/gameplay-framework-in-unreal-engine
언리얼 엔진의 게임플레이 프레임워크 | 언리얼 엔진 5.7 문서 | Epic Developer Community
언리얼 엔진의 게임 규칙, 플레이어 입력과 컨트롤, 카메라, 유저 인터페이스 등의 코어 시스템을 살펴봅니다.
dev.epicgames.com
쉽게 이해하면 게임이 어떻게 돌아가는지 표준화를 시켜놓은 것입니다.

GameMode
현재 게임이 어떤 규칙으로 돌아갈지 정의
PlayerController
유저가 직접 컨트롤
플레이어의 입력을 받아 처리 - Pawn을 조종
플로차트에서는 HUD(UI), Input, PlayerCameraManager로 구성
AIController
입력한 형태에 따라 자동으로 움직이게 처리 - Pawn을 조종
Pawn(액터)/Character
플레이어 혹은 AI가 조종할 수 있는 오브젝트
UI
게임화면에 표시되는 인터페이스
위 요소들이 레벨안에서 함께 동작하고, 액터(Actor) 들이 실질적인 오브젝트로 존재하며, UI를 통해 플레이어와 정보를 주고받습니다.
2. 레벨의 개념과 구조
2-1 메인 레벨과 서브 레벨
레벨은 게임이 진행되는 맵, 장면(Scene) 또는 무대(Stage)를 말합니다
언리얼에서는 하나의 레벨을
Persisten Level(메인 레벨)로 두고, 필요한 경우 Sub-Level(서브 레벨)을 추가로 불러와서 사용할 수 있습니다.
기본이 되는 메인 레벨 위에 지형, 조명, 인테리어 등 특정 기능을 가진 서브 레벨을 여러개로 쌓아서 만든다고 이해하면 쉽습니다.
파일 > 새 레벨 >기본>생성

MainLevel로 저장
창 > 레벨 누르면 레벨 창 나옵니다.

레벨창에서 레벨 > 새로 생성 > 빈 레벨(퍼시스턴트 레벨이 기본 레벨이라서) > SubLevel로 저장

퍼시스턴트 레벨 옆에 * 모양은 변경 사항이 생겼다는 의미입니다. (옆에 디스크 모양 눌러 저장)

뷰포트 오른쪽 하단에

이렇게 레벨이 생긴걸 확인 할 수 있습니다.
레벨은 서브로 설정해둔뒤 큐브 설치

액터 > 세이프 > 큐브

서브레벨에 배치된 큐브입니다.

오른쪽 레벨창에서 서브레벨을 끄면 (눈동자 모양 클릭)
큐브도 같이 사라지는 것을 확인 할 수 있습니다.

왼쪽 상단 레벨 필터 > 액터 배색 > 레벨 컬러를 클릭하면 레벨별로 액터 색이 달라집니다.

레벨 색은 레벨 창에서 변환 가능합니다.
2-2 Level Streaming
Level Streaming 기능을 통해 필요한 시점에만 레벨 데이터를 불러오고 언로드하여 메모리 사용량과 성능을 효율적으로 관리합니다.

SubLevel 우클릭 후 스트리밍 방법 변경이 가능합니다.
블루 프린트 같은 경우에는 내가 원하는 시점, 혹은 필요한 시점에 로드가 되게끔 만드는 것입니다
항상 로드됨 같은 경우에는 말 그대로 항상 로드가 되어 있는 것입니다.
2-3 레벨 전환(Load/Travel)
지금까지는 퍼시스턴트 레벨과 서브 레벨에 대해 배웠으니 이번에는
다른 레벨로 이동하는 방법을 알아보겠습니다.


화살표 끌어와서 Delay 3초로 바꿔주고

다시 화살표 끌고와서 Open Level

ThirdPersonMap을 입력해 줄겁니다.

왼쪽상단 컴파일 > 저장을 해주고 뷰포트 상단 초록색 시작버튼을 누르면

3초 뒤 레벨을 이동합니다.
3. 컨트롤러
3-1. 플레이어 컨트롤러 (Player Controller)
플레이어가 입력한 키보드/마우스/패드 신호를 받아 게임 내 행동으로 연결합니다.
- 플레이어 뷰(화면 카메라), UI 조작에도 중요한 역할을 수행합니다.
- 하나의 플레이어는 일반적으로 하나의 PlayerController를 가집니다.
3-2. 컨트롤러와 폰(Pawn)의 관계
플레이어 컨트롤러가 캐릭터(Characters)를 소유하면, 키보드 입력이 그 캐릭터의 움직임으로 이어집니다.
- 소유 상태가 바뀌면, 다른 폰을 조종하거나 새로운 캐릭터로 교체 할 수 있습니다.
3-3. AI 컨트롤러(AI Controller)
NPC나 적 캐릭터의 인공지능 로직을 담습니다.
- AI 전용 블루프린트나 C++ 클래스를 만들어, Behavior Tree(행동 나무) 등을 통해 의사결정 과정을 구현합니다.
언리얼 엔진의 비헤이비어 트리 - 개요 | 언리얼 엔진 5.7 문서 | Epic Developer Community
언리얼 엔진의 비헤이비어 트리 개념과 전통적인 비헤이비어 트리와의 차이점에 대해 설명합니다.
dev.epicgames.com

Root (몹 생성 등등..)
AI State (몹의 상태를 결정)
Has Line of Sight ? (캐릭터가 발견되었으면 추적)
Patrol (못찾았으면 추적)
Wait (대기)
4.UI(User Interface) 시스템
4-1. UMG (Unreal Motion Graphics)
UMG는 언리얼에서 UI를 만드는 전용 툴이자 프레임 워크입니다.
5. 액터(Actor)와 게임 세계 구성
5-1 . 액터의 기본 구조와 생명주기(Lifecycle)
액터란 레벨에 배치할 수 있는 오브젝트를 말합니다.
- 언리얼의 월드에 배치되는 모든 오브젝트의 부모 클래스입니다.
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/actors-in-unreal-engine
언리얼 엔진의 액터 | 언리얼 엔진 5.7 문서 | Epic Developer Community
언리얼 엔진의 기본적인 게임플레이 엘리먼트인 액터와 오브젝트에 대한 설명입니다.
dev.epicgames.com
액터의 라이프사이클
액터가 로드되거나 생성될 때, 그리고 소멸될 때는 간략히 해당 과정을 거칩니다
- 초기화 > 시작(Spawned) > Tick(프레임마다 업데이트) > Destroy
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/unreal-engine-actor-lifecycle
Unreal Engine Actor Lifecycle | Unreal Engine 5.7 Documentation | Epic Developer Community
What actually happens when an Actor is loaded or spawned, and eventually dies.
dev.epicgames.com

5-2. Pawn, Character, 그리고 컴포넌트(Component)
Actor >> Pawn >> Character의 순서로 이루어져 있습니다.
Pawn
- 액터를 상속받아와 "조종 가능한" 특징을 더한 클래스입니다.
Character
- Pawn을 상속받아와 "걷기, 달리기, 점프" 등의 이동 로직이 포함된 클래스입니다.
컴포넌트
- 액터가 자기 자신에 서브 오브젝트로 어태치할 수 있는 특수한 타입의 오브젝트입니다. (특수한 기능을 액터에 부착한다 생각하면 편함)
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/components-in-unreal-engine
언리얼 엔진의 컴포넌트 | 언리얼 엔진 5.7 문서 | Epic Developer Community
언리얼 엔진의 컴포넌트에 대한 개요입니다.
dev.epicgames.com
5-3. 이벤트(Event)와 상호작용
액터는 블루프린트 이벤트(BeginPlay, Tick, Overlap등)를 통해 상호작용 로직을 구현합니다.
- 캐릭터가 문(Actor)에 가까이 가면 자동으로 열리는 이벤트 처리 등
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/events-in-unreal-engine
언리얼 엔진의 이벤트 | 언리얼 엔진 5.7 문서 | Epic Developer Community
이벤트 그래프에서 개별 네트워크의 실행을 시작할 수 있도록 게임플레이 코드에서 호출되는 노드입니다.
dev.epicgames.com
'언리얼 기본' 카테고리의 다른 글
| 액터 이동 (0) | 2026.02.09 |
|---|---|
| 애니메이션 블루프린트와 블렌드 스페이스 (0) | 2026.02.03 |
| 플레이어 캐릭터 만들기 (0) | 2026.02.02 |
| 언리얼엔진 액터(Actor)의 종류와 배치 (1) | 2026.01.31 |
| Fab(마켓 플레이스) 사용 뒤 적용해보기 (0) | 2026.01.30 |