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

関連記事

レーザーやスラスター、爆発などのアニメーションを収録。GameMaker向け無料アセットバンドル『Space Rocks HD』が公開
2024.12.04
Epic Gamesの新マーケットプレイス「Fab」、12/17(火)までの期間限定で無料コンテンツを公開。機関室をイメージした環境アセットなど3製品
2024.12.04
ゲーム業界における国内最大級のカンファレンス「CEDEC2025」、公式サイトが公開。講演者の公募受付は1/6(月)から
2024.12.04
東プレ、静電容量無接点方式のスイッチを採用したテンキー「REALFORCE RT1 Ten Keyboard」を発売
2024.12.03
インディーゲーム紹介番組「INDIE Live Expo 2024.12.7」、出演者やティザー映像などの情報を公開。日替わりで豪華賞品が当たるキャンペーンも開催中
2024.12.03
フォートナイトとUEFNがv33.00にアップデート。経験値によるレベルアップや独自通貨をVerseなしで実装できるようになった
2024.12.02

注目記事ランキング

2024.11.27 - 2024.12.04
VIEW MORE

連載・特集ピックアップ

イベントカレンダー

VIEW MORE

今日の用語

ローパスフィルター(Low-Pass Filter)
ローパスフィルター
  1. 電気信号のうち、指定した周波数(カットオフ周波数)以下の信号を通し、それより上を大きく低減させるフィルター。
  2. ゲーム開発において、基本的にはサウンド用語として用いられる。例として、特定のセリフをローパスフィルターによってくぐもった音に加工することで、隣の部屋や遮蔽物の後ろで話しているかのような表現を行うことができる。
VIEW MORE

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