2025. 4. 29. 01:03ㆍ자기계발
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
오늘은 언리얼 엔진 C++ 프로그래밍의 핵심 요소 중 하나인 델리게이트, 스마트 포인터, 그리고 컨테이너 자료구조를 학습했다. 언리얼은 이 세 가지를 통해 객체 간 통신과 메모리 관리, 데이터를 체계적으로 다루는 방식을 효율적으로 제공하고 있다는 점을 알게 되었다.
먼저 스마트 포인터(Smart Pointer) 에 대해 학습했다. 기존 C++에서는 메모리 해제를 직접 관리해야 해서 종종 메모리 누수 문제가 발생했지만, 언리얼에서는 TSharedPtr, TWeakPtr, TUniquePtr 등을 통해 메모리 관리를 훨씬 안전하게 할 수 있었다.
다음으로는 컨테이너(Container) 들을 살펴봤다. 언리얼에서는 TArray, TMap, TSet 등을 사용한다. 기본적인 사용법은 C++ STL과 비슷하지만, 언리얼 컨테이너는 에디터와의 호환성, 네트워킹, 가비지 컬렉션 등 언리얼 엔진 특성에 최적화되어 있다는 차별점이 있었다. 예를 들어 TArray는 단순한 배열이 아니라, 복제(replication), 직렬화(serialization) 기능을 지원해 네트워크 게임 개발에도 쉽게 적용할 수 있다. TMap은 키-값 쌍으로 빠른 검색이 가능해, 상태 관리나 데이터 매핑 작업에 유용할 것 같았다.
마지막으로 델리게이트(Delegate)를 학습했다. 델리게이트는 언리얼 엔진에서 이벤트를 전달하는 데 사용되는 일종의 "콜백 메커니즘"이다. C++에서는 직접 함수 포인터나 람다를 이용해 콜백을 처리하지만, 언리얼에서는 델리게이트를 통해 훨씬 명시적이고 안전하게 이벤트를 관리할 수 있었다.
특히 DECLARE_DELEGATE, DECLARE_DYNAMIC_MULTICAST_DELEGATE 같은 매크로를 통해 쉽게 델리게이트를 선언하고, 필요한 이벤트를 바인딩하는 구조가 인상적이었다. 델리게이트를 통해 객체 간 결합도를 낮추면서도 자연스럽게 동작을 연결할 수 있어서, 앞으로 대규모 프로젝트를 진행할 때 꼭 필요한 패턴이라고 느꼈다.
Abit.ly 다운받기
abit.ly
'자기계발' 카테고리의 다른 글
패스트캠퍼스 환급챌린지 30일차 : RPG 전투 플레이 프로젝트로 배우는 언리얼 엔진 5 게임 개발 강의 후기 (1) | 2025.04.30 |
---|---|
[클래스101] 구글 애드센스로 평생 월 100만원 만드는 방법 7일차 (1) | 2025.04.29 |
[클래스101] 구글 애드센스로 평생 월 100만원 만드는 방법 6일차 (0) | 2025.04.28 |
패스트캠퍼스 환급챌린지 28일차 : RPG 전투 플레이 프로젝트로 배우는 언리얼 엔진 5 게임 개발 강의 후기 (0) | 2025.04.28 |
패스트캠퍼스 환급챌린지 27일차 : RPG 전투 플레이 프로젝트로 배우는 언리얼 엔진 5 게임 개발 강의 후기 (0) | 2025.04.27 |