구현 목적AchievementComponent가 Report를 받으려면 모든 컴포넌트가 직접 Report해야 하거나, AchievementComponent가 각 컴포넌트의 Delegate를 개별적으로 등록해야 했다. 이 방식은 결합도가 높고 확장 시 수정 범위가 커진다. 이를 해결하기 위해 메시지 시스템을 도입해 클래스 간 직접 의존을 제거했다.자료 조사 결과 언리얼 엔진에도 GameplayTag 기반의 메시지 시스템이 라이라 프로젝트에 있는 것을 확인했다. 기본 기능이 아니기도 했고 구현한 경험도 있었기 때문에 간단한 메시지 시스템은 Subscribe-Publish 구조로 충분하다고 판단해 구현했다.요구 사항GameplayTag를 이용해서 Tag 기반의 BroadcastEvent에 따른 구조체를 Bro..