Unity・Godot・WPFなどをサポートしたC#環境向けの汎用Rx「R3」がプレビューリリース。「UniRx」のneuecc氏が開発

Unity・Godot・WPFなどをサポートしたC#環境向けの汎用Rx「R3」がプレビューリリース。「UniRx」のneuecc氏が開発

2024.01.15
ニュース
この記事をシェア!
Twitter Facebook LINE B!
Twitter Facebook LINE B!

新しいC#用のRxライブラリのプロジェクト「R3」がスタートとなりました。現在はプレビューリリースとなっており、サポート対象は.NET Standard 2.0、.NET Standard 2.1、.NET 6(.NET 7)、および .NET 8 以降です。

R3のGitHubページhttps://github.com/Cysharp/R3
R3のライセンス:MITライセンス
Unity対応バージョン:すべての機能を使うにはUnity 2022.2以上(一部ならUnity 2021.3でも可)
Godot対応バージョン:Godot4.x~
各エンジンへの導入方法はGitHubページに説明があります。

Rx(Reactive Extensions)とUnity

C#ではLINQが利用できますが、RxはLINQの考え方を非同期処理、時間経過による処理、そしてイベント処理に使用できるよう拡張したものです。例えば数秒後に○○する、といった動作の処理を簡単に記述することができます。RxはC#だけでなくJavaやSwiftなど他言語向けにも移植されており、一度Rxの概念を覚えれば、他言語でも同じような形式でコーディングできるメリットがあります。

Unityゲーム開発環境においては、.NET RxをUnity向けに再実装した「UniRx」プロジェクトが人気を博しており、UIなどにおけるMV(R)Pパターンの実装に適用できる強力なライブラリです。かつては非同期・時間経過処理の分野でも使用されていましたが、現在はasync/awaitが使用できるようになったため、.NETのTaskクラスまたはUniTaskが活用されるようになっています。書籍「UniRx/UniTask完全理解」も発売されました。

書籍『UniRx/UniTask完全理解』筆者インタビュー。執筆の振り返りと、本書を通じて伝えたいこと。

R3とUniRxの立ち位置の違い

R3の開発者はUniRxと同じneuecc氏です。R3はUnityでも使用できますが、UniRxを置き換えるものではなく、設計が大きく異なります。

まず、R3はC#環境向けの汎用Rxであり、そこにUnity向けの拡張がセットになっている構成です。UniRxと比較して機能が削ぎ落とされ、また同じ名前の機能でも挙動が変わっている箇所があるため、UniRxからR3へ簡単に置き換えられるものではなさそうです。これから始まるプロジェクトにはR3が選択肢に入る、という形になります。

また、R3の特徴である幅広いC#環境への対応により、Godotでも使えるようになりました。Godotは基本的にGodotEngineの独自言語であるGDScriptを使用して開発しますが、Godot4ではC#も利用できますのので、C#部分に関しては今回リリースされたRxライブラリを使用することが可能です。ただし、C#はデスクトップターゲット(Linux, Windows, macOS)のみとなっているため、モバイルやwebターゲットでは使用できません。

R3はプレビュー期間のため、neuecc氏は「皆様の意見を激しく求めています……!」としています。リリースからすでにv0.1.2に更新されています。ゲーム開発でUniRxを活用している方は、ぜひR3を触ってフィードバックをしてみてはいかがでしょうか。
今回リリースされたR3はこちらです。

本記事はIndieGamesJp.devとのメディア提携により掲載しています。

元記事URL:https://indiegamesjp.dev/?p=8894

関連記事

Ubisoft、画像からPBRマテリアルを生成するAIモデル「CHORD」をオープンソースで公開。非商用の学術目的に限り使用できる
2025.12.12
「Unity 6.4 Beta」リリース。「DirectStorage」サポートなど、ビルドのパフォーマンス改善に向けた機能が追加
2025.12.12
任天堂、Switch 2タイトル『Drag x Drive』開発陣へのインタビュー記事を公開。車いすを両手でこぐ動作を「Joy-Con 2」マウス操作で再現
2025.12.12
Pixar Animation Studios開発のレンダリングソフトウェア「RenderMan」、バージョン27.1にアップデート
2025.12.11
「Godot 4.6」ベータ版がリリース。物理エンジン「Jolt Physics」デフォルト化や、「Tracy Profiler」によるGDScriptプロファイリングを正式サポート
2025.12.11
『Clair Obscur: Expedition 33』UE採用経緯や、有効活用できた機能とは?開発スタジオ共同創設者Tom氏へのインタビュー記事、Epic Gamesが公開
2025.12.10

注目記事ランキング

2025.12.07 - 2025.12.14
VIEW MORE

連載・特集ピックアップ

イベントカレンダー

VIEW MORE

今日の用語

フレームレート(Frame Rate)
フレームレート 1秒あたり何回フレームを表示するかを示す数値。フレームレートの単位のことをFPS(frames per second)と呼ぶ。
VIEW MORE

Xで最新情報をチェック!