さけのさかなのブログ

同人ゲーム開発やってます。Unity使ったりする。

InputActionの各種コールバック購読をIDisposableで扱う拡張メソッド

InputActionのperformedstartedcanceledコールバックはマルチキャストっぽいインターフェースになっており、+演算子Action追加、-演算子で削除を行うようになっている。

inputAction.performed += _ => {};

このままでは使いづらいので作ったのがこの拡張メソッド。IDisposableが返ってくるので、あとはUniRxに任せてAddToで解放するなりなんなり。

inputAction
    .SubscribePerform(_ => { })
    .AddTo(this)

コード

github.com