Event Dispatcher

Dispatcher 생성, Bind, Call, Unbind 관계도

Event Dispatcher는 소유자와 구독자를 느슨하게 연결하지만, 중복 바인딩과 해제를 관리하지 않으면 레벨 전환과 UI에서 문제가 생깁니다.

01

Dispatcher 선언

소유자 블루프린트에서 전달할 payload와 이벤트 이름을 명확히 정합니다.

계약
02

참조 확보

구독자는 소유자 인스턴스 참조를 안전하게 얻은 뒤 Bind를 수행합니다.

reference
03

Bind Event

구독자의 Custom Event를 연결해 소유자 이벤트에 반응하게 합니다.

subscribe
04

Call Dispatcher

상태 변경 시 소유자가 Dispatcher를 호출해 구독자들에게 알립니다.

publish
05

Unbind

UI 닫힘, 액터 파괴, 레벨 전환 시 바인딩을 해제합니다.

cleanup
UI Update
게임 상태를 화면에 전달 체력, 점수, 인벤토리 변화처럼 상태 변경을 UI에 알릴 때 적합합니다.
중복 생성 한계
Actor Signal
액터 간 느슨한 연결 문 열림, 퀘스트 완료, 트리거 발동처럼 직접 참조를 줄일 수 있습니다.
payload 설계
Level Event
레벨 전환 시 한계 레벨이 바뀌면 참조와 바인딩이 사라지거나 남아 오류를 만들 수 있습니다.
EndPlay 정리

디스패처 안전 기준

중복 Bind 같은 이벤트가 여러 번 바인딩되어 한 번 호출에 여러 번 반응하지 않는지 확인합니다.
참조 유효성 Bind 전 소유자 참조가 유효한지와 수명 주기가 충분한지 봅니다.
해제 지점 구독자가 사라질 때 Unbind 또는 Clear 경로가 있어야 합니다.