해당 값을 C++에서 제작해주었다.
해당 로직은 추후에 좀 더 제작 후에 인터렉션 다이어그램으로 정리해서 업로드 하겠다.
아직 로비와 메뉴로직은 완성되었지만,
메뉴 시스템의 전반적인 구성은 완성되지 않았다.
몇명이 참가할 것인지에 대한것을 BP에서 조절할 수 있도록 제작하였으며,
해당 매치 타입 또한 BP에서 조절 가능하도록 구현하였다.
제작하면서 배웠던 것
언리얼에서 서버 이동할 때 맵을 동시에 담아두지 않는 기법이 있다.
내 생각에는 이것은 최적화 기법이라고 생각한다.
예전에 DX로 던그리드를 제작할 때는 내가 맵 이동 시에 제작했던 기법과 흡사했다.
제작하며 어려웠던 점
서버에 대한 이해와 델리게이트 완벽히 되지 않아서 그냥 어물쩡 넘어가면서 쓴 내용이 많다.
따로 서버에 대한 기본기와 언리얼 공식 문서를 보며 복기하는 날을 가져야겠다.
예를 들면 델리게이트 핸들을 왜 쓰는지 정확하게 말을 못하겠다.
나중에 따로 정리하자.
언리얼 엔진에서 델리게이트(Delegate)와 델리게이트 핸들(Delegate Handle)은 이
벤트 시스템을 구현하고 관리하는 중요한 도구들이다.
이를 사용하는 예상 이유는 다음과 같다:
1. 이벤트 기반 프로그래밍 지원
언리얼 엔진에서는
이벤트 기반 프로그래밍을 통해 다양한 시스템과 컴포넌트가 서로 독립적으로 상호작용할 수 있다.
델리게이트는 특정 이벤트가 발생했을 때 호출될 함수를 등록하는 데 사용된다.
2. 코드의 모듈화 및 재사용성 향상
델리게이트를 사용하면 코드를 더 모듈화할 수 있으며,
재사용성이 높아진다.
이벤트를 처리하는 코드가 특정 객체나 클래스에 종속되지 않기 때문에
다양한 상황에서 같은 코드를 사용할 수 있다.
3. 유지보수 및 가독성 향상
델리게이트와 델리게이트 핸들은 이벤트 구독 및 해제를 쉽게 할 수 있게 해준다.
델리게이트 핸들을 사용하면 특정 델리게이트에 등록된 함수를 나중에 쉽게 제거할 수 있어,
코드 유지보수와 가독성을 높이는 데 도움을 준다.
근데 이는 추측일 뿐,
정확한 공식문서는 아니니깐, 공식문서 참고해서 다시 정리하자.
내가 이해한 델리게이트와 델리게이트 핸들
델리게이트는
다른 클래스와 이어주는 함수 포인터 매개체 역할 전역으로 쓸 수 있는 함수 포인터
델리게이트 핸들은
이러한 델리게이트들을 자유 자제로 사용할 수 있지만,
직접 접근하지 않고 사용하게끔 돕는 것
'UE5' 카테고리의 다른 글
서버연동 GameMode & GameState (0) | 2024.05.27 |
---|---|
서버 연동 프로젝트 KU - 콜백되는 서브 시스템 함수 만들기 (0) | 2024.05.24 |
플러그인 제작 (0) | 2024.05.17 |
서버 연동 프로젝트 KU - 2. 맵 이동 로직 구현(1) (0) | 2024.05.17 |
서버 연동 프로젝트 KU - 1. 서버 연동하기 (0) | 2024.05.10 |