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

関連記事

Steamで「体験版専用」ストアぺージが開設可能に。体験版単独のレビュー収集が可能になり、「話題の新作」チャートにも載るように
2024.07.26
Unity Technologies、プログラマー向けデザインガイドの電子書籍をアップデート。ストラテジーなど4種のパターンが追加され、Unity 6対応に
2024.07.26
7/27(土)0時より「東京ゲームダンジョン6」の出展申込受付が開始。初参加の団体用に25の出展枠を新設し、合計145の出展枠を用意
2024.07.26
UE5で揺れ物を「かわいく」揺らすプラグイン「Kawaii Physics」が更新。髪が風になびく複雑な動きもパラメータ設定で手軽に制御
2024.07.25
現実世界のライティング環境を忠実に再現する「TrueHDRI」。バンダイナムコスタジオ、開発陣にインタビューした記事を公開
2024.07.25
『ドラクエモンスターズ3』開発にはUnityのプレハブバリアントやPolybrushなどを活用。ユニティ・テクノロジーズ・ジャパン、開発者インタビュー記事を公開
2024.07.24

注目記事ランキング

2024.07.20 - 2024.07.27
VIEW MORE

連載・特集ピックアップ

イベントカレンダー

VIEW MORE

今日の用語

フォグ(Fog)
フォグ 「霧」を意味する英単語。3DCGにおいて、現実の霧による見た目をシミュレーションする画面効果やエフェクトを指す。代表的なものとして、カメラから遠くにあるオブジェクトの色調を変化させることで遠近感を出す手法がある。
VIEW MORE

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