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

関連記事

「第2回GYAAR Studio インディーゲームコンテスト」の受賞15作品が発表。プラチナ賞は、悪徳商人からオタカラを盗むアイテム収集アクションゲーム『BANDIT KNIGHT』が受賞
2024.03.04
「シリアスゲーム」の成り立ちから開発方法、課題や展望まで事例を交えて解説。コロナ社がシリアスゲーム入門書籍を発売
2024.03.04
Unity上でFBXからインポートした3Dモデルを、参照を残したままPrefab化する方法を紹介。「COYOTE 3DCG STUDIO」の技術ブログで解説記事が公開
2024.03.04
Adobe、USDファイルをFBXやglTFなど5つのフォーマットに変換できるプラグイン群「USD File Format Plugins」をオープンソースで公開
2024.03.01
SDFを活用した低負荷なアニメ調のシェーディングをUE5で実装。alwei氏が解説記事を公開
2024.03.01
PLATEAU、3D都市モデルを使った位置情報共有ゲームをつくるチュートリアル記事を公開。ゲームの制作から、サーバーの準備、アプリの配信まで詳細に解説
2024.03.01

注目記事ランキング

2024.02.27 - 2024.03.05
1
『フォートナイト』で動く本格的なゲームが作れるツール「UEFN」とは?従来のクリエイティブモードから進化したポイントを一挙紹介!
2
【CHALLENGE1】「クリエイター ポータル」を使って、UEFNで作成した島を世界中に公開する
3
【2022年5月版】今から始めるフォートナイトの「クリエイティブ」モードープレイ開始から基本的な操作方法まで解説
4
UEFNで使えるプログラミング言語「Verse」のノウハウが集結。『UEFN.Tokyo 勉強会 03 Verse Night』レポート
5
フォートナイト クリエイティブとUEFNで使える仕掛け一覧
6
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.1「アイテム系」
7
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.5「島の設定」
8
フォートナイトとUEFNがv28.30にアップデート。「NPCスポナー」が、スポーン・撃破時のエフェクトや移動速度のカスタマイズに対応
9
【STEP2】UEFNの基本的な使い方を覚えよう
10
【CHALLENGE2-1】フレンドと一緒にゲームを作ろう――UEFNプロジェクトをチームメンバーとリアルタイムで共同編集する
11
【STEP1】「UEFN」を入手しよう
12
まるで『マイクラ』?ボクセル地形を生み出す無料アセット「VoxelPlugin Free」で”地形を掘ったり積み重ねたり”して遊んでみよう
13
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.4「ゲームシステム系」
14
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.7「NPC系」Part1
15
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.2「ユーティリティ系」
16
フルカラー書籍「UEFN(Unreal Editor For Fortnite)でゲームづくりを始めよう!」、ついに本日発売!全国書店で好評発売中!
17
【CHALLENGE3】UEFNの機能「ランドスケープ」を使ってオリジナルの地形を作る
18
NIKEのAir Maxをテーマにしたフォートナイトの島『Airphoria』、制作に関するチュートリアルが公開
19
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.10「UI系」Part1
20
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.10「UI系」Part2
21
『フォートナイト』で建築ビジュアライゼーション!?UEFNでオリジナルの世界観をどう作り上げたか、その手法を解説【UNREAL FEST 2023 TOKYO】
22
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.3「プレイヤー系」
23
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.6「チーム・対戦系」Part1
24
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.7「NPC系」Part2
25
フォートナイトとUEFNがv26.30にアップデート。ロビー画面が一新され、クリエイターが島ごとにロビー背景を自由にカスタムできるように
26
【STEP6-1】「オリジナルキャラクターを登場させよう」――Fabでアセットをダウンロードしよう
27
「UEFN」って実際どうなの? 編集部が3時間で「みんなで遊べるアクションゲーム(?)」を作ってみた
28
【STEP5-1】スタート時のカウントダウンを作る
29
【STEP4-1】コース外に出たらデスする仕組みを作る
30
【STEP4-2】リスポーンとチェックポイントの仕組みを作る
VIEW MORE

イベントカレンダー

VIEW MORE

今日の用語

レンダリング(Rendering)
レンダリング コンピューターグラフィックスにおける、各種データ(3Dモデルなど)をプログラムを用いて計算し、画像として表示すること。レンダリングを行うプログラムをレンダラー(Renderer)と呼ぶ。
VIEW MORE

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