반응형
UniRx란?
UniRx는 'Reactive Extensions for Unity'의 약자로 유니티에서 반응형 프로그래밍을 사용할 수 있게 공개한 라이브러리입니다.
많이 사용하는 Unity UniRx 로직
연속 더블터치를 막기위해 0.5f 시간 딜레이 주기
-버튼 클릭시 다음 클릭이 0.5f 이전까지 클릭 무시
public Button agreeButton;
void Awake()
{
agreeButton.
OnClickAsObservable().
ThrottleFirst(System.TimeSpan.FromSeconds(0.5f)).
Subscribe(_x =>
{
//실행 코드
});
}
Msg 받을 곳
브로드케스트 방식으로 리시브가 있는 모든 곳에 보낼수 있다.
public class AAA : MonoBehaviour
{
public class MSG_Refresh
{
public string msg;
}
private void Awake()
{
MessageBroker.Default.Receive<MSG_Refresh>()
.TakeUntilDestroy(this)
.Subscribe(x =>
{
string MSG = x.msg;
});
}
}
보내는 방법
MessageBroker.Default.Publish(new AAA.MSG_Refresh()
{
msg = "보낼 메세지"
});
코루틴없이 딜레이를 줄수있어 편하다.
1초후 딜레이후 실행
Observable.Timer(TimeSpan.FromSeconds(1f)).Subscribe(_ =>
{
//실행코드
}).AddTo(this);
반응형
'Unity 유니티 기초강의' 카테고리의 다른 글
유니티 비주얼 스크립팅 볼트 Bolt 1 - 설치 (0) | 2022.06.04 |
---|---|
유니티 Unity 에셋 DOTween 에니메이션 (0) | 2022.06.04 |
Unity UGUI Text 일부 칼라 크기 변경 (0) | 2022.06.04 |
유니티 unity 무한스크롤 스크롤 풀링 에셋추천 (0) | 2022.06.04 |
Unity 플랫폼 매크로 전처리 Define 정의 (0) | 2022.06.04 |
댓글