사전캠프 합류가 늦어 오늘 배운 개념은 진도가 밀린 강의에서 배운 내용으로 적었다.
1. 오늘 배운 개념 요약
스마트 포인터
언리얼 스마트 포인터는 엔진 환경에 최적화된 자체 구현체를 사용함: #include "Templates/SharedPointer.h"
- TSharedPtr(공유 포인터): Reference Count 기반; 참조가 0이 되면 메모리 해제; 순환참조 주
- TSharedRef(공유 참조): null 불가; 안전성 높음
- TWeakPtr (약참조 포인터): 객체 생명주기 검사 삭제시 자동으로 null; 순환 참조 방지함; 참조카운트 안올라감
- TUniquePtr (고유 포인터): 소유권이 하나뿐; 복사 불가하고 이동(MoveTemp)만 가능
관리자 -> 부하 Shared / 부하 -> 관리자 Weak
언리얼 프레임워크

- GameMode
- PlayerController/AIController
- Pawn/Character
- UI
위 요소들은 level 안에서 함께 동작하고, Actor들이 실질적인 오브젝트로 존재하며 UI를 통해 플레이어와 정보를 주고받음
Level의 개념과 구조
- 레벨은 게임이 진행되는 맵, 장면 또는 무대를 의미함
- 언리얼에서는 하나의 persistent level을 두고 필요에 따라 sub-level을 불러와서 사용함
- 지형, 조명, 인테리어 등 특정 기능적 구분을 위해 level을 여러 개로 나눌 수 있음
레벨스트리밍: 레벨 데이터 로드 시점 정할 수 있음
컨트롤러
- 플레이어 뷰(화면 카메라), UI 조작에도 중요한 역할을 수행
- 컨트롤로은 Pawn을 possess 하여 제어 가능(player - controller - pawn/character 종속성)
- AI controller는 Behavior Tree로 의사결정 과정 구현 가능
UI 시스템
- UMG는 언리얼 엔진에서 UI를 만드는 프레임워크
Actor

* 라이프사이클: Spawned -> Tick -> Destroy; 블루프린트 이벤트라고 함
* Transfrom 가지고 다양한 컴포넌트를 붙일 수 있음 유니티 Monobehavior 비슷
* 상속 Actor >> Pawn >> Character
액터의 종류
- Empty Actor
- Static Mesh Actor
- Light Actor
- Pawn & Charactor
- Camera Actor
- Volumn 계열 액터
2. 구현 과정 요약 (스크린샷 + 간단 설명)



Recording 2026-04-13 150805.mp4
1.57MB
블루프린트로 생성된 캐릭터에 이동, 점프, 카메라 회전에 따른움직임(Use Controller Yaw)을 넣고 실제 플레이로 실험해보았다.
3. 느낀 점 & 개선하고 싶은 점
아직 언리얼이 익숙하지 않아서 블루프린트 UI에서 원하는 기능을 찾기 어려웠다. 강의랑 docs를 읽어서 좀 더 지식을 보완할 필요가 있어보인다. 또한 언리얼에서의 컴포넌트는 유니티에서 달라서 언리얼에서의 컴포넌트 사용법을 따로 공부할 필요가 있다