[Unity] EventBus-2

Connected Brain·2025년 5월 6일
0

프레임워크

목록 보기
2/6

EventBus 알아보기

  • 이번 게임 개발 프로젝트에서 사용하는 EventBus 프레임워크의 구조를 살펴보고, 활용하기 위한 방법을 알아보고자 한다.

IEvent 인터페이스

public interface IEvent { }

public struct BattleStartEvent : IEvent
{
}
  • IEvent는 구현 요소를 가지고 있지는 않으며, BattleStartEvent라는 구조체를 통해 구현되고 있다.

BattleStartEvent 구조체

		private void OnEnable()
        {
        	...
            
            EventBus<BattleStartEvent>.Register(battleStartBinding);
            
			...
        }
        
        private void OnDisable()
        {
            EventBus<BattleStartEvent>.Deregister(battleStartBinding);
            
			...
        }
  • CardDeck 클래스에서 이벤트 버스에 등록 및 해제가 이루어지고 있음을 볼 수 있었다. BattleStartEvent 구조체에 대한 이벤트 버스에 battleStartBinding이라는 EventBinding 클래스를 구현한 객체를 HashSet에 추가하고 있음을 볼 수 있다.

0개의 댓글