Unity: UniRxのUpdateAsObservable
UpdateAsObservable
Updateを実行することができる
使い方
using UniRx; using UniRx.Triggers; void Start() { this.UpdateAsObservable() .Subscribe(UpdateRx); } void UpdateRx(Unit unit) { Debug.Log("updating"); }
this.UpdateAsObservable()をSubscribeしてあげることで、Updateされ続けます。
そして、subscribeしたものはobject破棄のタイミングで消滅します。
便利だと思ったこと
Updateは別のscriptから初期化処理を呼び出してから呼びたい場合、
using UniRx; using UniRx.Triggers; public void Init() { // publicで他scriptからinit this.UpdateAsObservable() .Subscribe(UpdateRx); } void UpdateRx(Unit unit) { Debug.Log("updating"); }
こういう感じで書けるので、
Init
UpdateRx
の順番が保証できるので便利だな思いました。