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

関連記事

Cygames、『GRANBLUE FANTASY: Relink』サウンド実装技術をブログで解説。多数のSEを動的に制御する内製システムなどを紹介
2026.07.06
Unityの物理エンジン「Unity Physics」最新機能や、2Dアクションゲームの実装手法も解説。「Unity 物理 完全に理解した勉強会」アーカイブ動画とスライド資料が公開
2026.07.06
『ロード・オブ・ザ・リング』で使われた群衆シミュレーションツール「Massive」、無料ライセンスの提供が開始。非商用に限り利用可能
2026.07.05
ゲーム開発関連ツールのリリース・アップデートまとめ【2026/7/4】
2026.07.04
UnityのECSでスキンメッシュアニメーションを実装。GameObjectのデータを変換する仕組みなど、QualiArtsがブログで解説
2026.07.03
Unityの規約改定で外部AIツール連携が制限。AI学習・スクレイピングの阻止が目的で、「サードパーティーMCP自体は禁止しない」との説明も
2026.07.03

注目記事ランキング

2026.06.30 - 2026.07.07
VIEW MORE

連載・特集ピックアップ

イベントカレンダー

VIEW MORE

今日の用語

プロパティ(Property)
プロパティ 英語で「資産」や「属性」を意味する。 一般的に対象の持つ属性・性質などを表す。例えば、画像ファイルにおける、容量やファイル形式、解像度などの情報。 3DCGツールやゲームエンジンにおいては、各オブジェクトのふるまいを決める個別の設定項目を示すことが多い。
VIEW MORE

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