유니티 이벤트

RudinP·2023년 3월 27일
0

Study

목록 보기
8/222

이벤트란?

  • 사건이 발동하면 그 사건에 등록해둔 기능들이 같이 자동으로 발동되는 것.
  • 이벤트에 등록해둔 기능들은 서로 독립적임.
  • 코드가 얽혀서 스파게티 코드가 되지 않는 장점이 있음.

사용 상황

  • A 스크립트에서 B,C,D 스크립트에 있는 메소드를 특정 조건 충족 시 모두 실행하고 싶을 때
  • 이 경우 A 스크립트에서 B, C, D 를 참조해야 함.
  • 참조가 복잡하게 얽힘(Call By Reference)

예시

using UnityEngine.Events

public class Player: MonoBehaviour{
	public UnityEvent onPlayerDead;
    
    private void Dead()
    {
    	onPlayerDead.Invoke(); //이벤트 발생
    }
}

이후 유니티 인스펙터에서 이벤트 리스트에 원하는 기능을 추가해두면 됨.

해당 강의에서 추가적으로 배운 것

Invoke("함수", 5f) : 5초의 시간 후에 해당 함수를 실행

profile
곰을 좋아합니다. <a href = "https://github.com/RudinP">github</a>

0개의 댓글