본문 바로가기
└ Unity

[Unity] UniRx 정리

by 짜장이누나 2021. 4. 27.

 

* 내가 기억하기 위해 정리하는 내용이므로 현재 이 글의 정보가 부족할 수 있고 앞으로 관련 내용이 추가 될 수 있음

 

 

UniRx의 개념과 특징

- UniRx란, .NET ReactiveX 프레임워크를 Unity3D 에서 사용할 수 있도록 만든 라이브러리(Reactive Extentions for Unity 라이브러리)

- 시간과 관련한 처리, 비동기 처리와 같은 일을 손쉽게 다룰 수 있음

- 비동기적 데이터 흐름을 처리하는 프로그래밍 기법과 Observer 디자인패턴을 기반으로 설계됨

 

UniRx 사용

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
// Stream 을 Subject 로 등록(선언)
private Subject<int> m_OnClickBtn = new Subject<int>();
 
 
// OnXXXAsObservable() 생성하여 관찰
public IObservable<int> OnClickBtnAsObservable() => m_OnClickBtn.AsObservable();
 
 
// .OnNext() 를 사용하여 stream 에 데이터 통지
m_OnClickBtn.OnNext(data);
 
 
// Subscribe 하여 data 처리
OnClickBtnAsObservable().Subscribe(_ => Debug.Log("click")).AddTo(this);
 
cs

 

 


 

출처

 

- github.com/neuecc/UniRx

 

neuecc/UniRx

Reactive Extensions for Unity. Contribute to neuecc/UniRx development by creating an account on GitHub.

github.com

- gist.github.com/casamia918/93b8db69beb9ee06b92a96b2a234d48e

 

[Korean ver.] The introduction to Reactive Programming you've been missing

[Korean ver.] The introduction to Reactive Programming you've been missing - introrx.md

gist.github.com

 

 

 

'└ Unity' 카테고리의 다른 글

[Unity] 애니메이션 종료 시점 이벤트  (0) 2022.07.18
[C#] 비트마스크(BitMask) 연산 및 활용  (1) 2022.02.28