OneJS brings JavaScript and many beloved web techs to Unity, seamlessly integrating with UI Toolkit without the need for a browser or webview.OneJS provides scripting capabilities. You can use whichever SRP with it.Visit onejs.com for Documentation and TutorialsDiscord • Youtube • Twitter/X • Github(Familiarity with React and Typescript is recommended)OneJS brings the power of React-style workflows to Unity UI development. It provides a thin DOM layer for Preact, seamlessly integrating with UI Toolkit for high performance. Leverage Typescript, JSX, Tailwind, and many other web techs that you already know and love - all working natively in Unity.With V2, OneJS is now supercharged by Puerts for up to 100x performance boost. The new ESBuild workflow simplifies deployment and supports npm packages.Beyond UI, OneJS enables easy implementation of modding systems. Give your players the power of TypeScript, JSX, and USS to create addons and mods for your game.Requirements- Unity.Mathematics- Unity.Burst- Unity Version 2021.3+ (for stable UI Toolkit)- Unity Version 2022.1+ (if you need to use UI Toolkit's Vector API)PlatformsSupported on Windows, Mac, iOS, and AndroidFeature Highlights- Typescript & JSX for UI Development in Unity- Fast Iteration speed with Live Reload- Awesome Performance due to 1-to-1 interop between Preact and UI Toolkit- Tailwind workflow and Compiler support- Styled Components and Emotion APIs are built-in- Runtime CSS Load CSS strings dynamically at runtime!- Zero-Allocation Interop via Puerts optimizations- Easily swap between 3 backends: QuickJS (small footprint), V8 (high performance), or NodeJS (full ecosystem)- ESBuild Workflow for simplified bundling and npm package support- Auto TS Definitions GenerationYou will have full access to the C# source code. Private Github repo access can also be requested via the /collab command on our Discord Server.
OneJS は、Unity 向けに特別に設計されたスクリプト エンジンおよび UI ソリューションです。 軽量でパフォーマンスが高く、純粋な C# ベースであり、第一級の Typescript サポートを備えており、どこでも動作します。
説明
ウェブサイトとドキュメント • Discord • Youtube • Twitter • フォーラムのスレッド
(React と Typescript に精通していることが推奨されます)
OneJS の最大の利点は、React (JSX) ワークフローを使用して UI を設計できることです。 これは、Preact に薄い層の「dom」を提供することで実現します。 内部的には純粋な UIElements なので、非常にパフォーマンスが高くなります。 UI Toolkit のコントロール、イベント、ベクター API、スタイルはすべて、そのまま使用できます。
OneJS を使用すると、UI コードを変更するたびに C# スクリプトをコンパイルする必要がなくなります。 特に組み込みのライブ リロードを使用すると、反復時間が非常に速くなります。
UI に加えて、OneJS を使用してプレーヤー用のアドオン システムを簡単に構築することもできるため、Typescript + JSX + CSS の力を利用してゲームのアドオン/MOD/コンテンツを作成することもできます。
技術的な詳細
要件
- Unity.数学
- Unity バージョン 2021.3+ (安定した UI ツールキット用)
- Unity バージョン 2022.1+ (UI Toolkit の Vector API を使用する必要がある場合)
機能のハイライト
- Unity での UI 開発のための Typescript と JSX
- ライブ リロードによる高速イテレーション速度 (複数のデバイス間でも)
- Preact と UI Toolkit 間の 1 対 1 の相互運用による素晴らしいパフォーマンス
- スタイル付きコンポーネントと感情 API が組み込まれています
- ランタイム CSS ランタイム時に CSS 文字列を動的にロードします。
- Tailwind ユーティリティ クラス、任意の値、および応答ブレークポイントがサポートされています。
- 非同期/待機およびC#タスクがサポートされています
- Preact Signals はすぐに使用できます
- 大量の UnityEngine および UIElements タイプの TS 定義。 また、入力作業をより簡単にする C# から TS への型コンバーターも提供しています。
- どこでも動作 (Mac、Windows、iOS、Android、エディター、スタンドアロン、Mono、Il2cpp)
- 必要なときに内蔵のセキュリティ。 (プレイヤーにスクリプト機能を提供することを選択した場合は、Jint の好意により、メモリ制限、呼び出しの深さ、スクリプトのタイムアウトなど、多くのセキュリティ設定を設定できます)
C# ソース コードに完全にアクセスできるようになります。 ライブラリ Javascript ファイル (Preact や Lodash など) は縮小されます。 プライベート Github リポジトリへのアクセスは、Discord 経由でリクエストすることもできます。