Unity エディターのユーザーインターフェースは、ほとんどの場合、即時モードの UI システムを中心に構築されています。IMGUI は複数のコンテキストでうまく機能しますが、深刻な設計上の制限があり、だれもが使用するエディター機能と拡張の生産性に影響します。
これが UIElements を作成した理由です。UIElements は保持モード (retained-mode) の UI システムで、パフォーマンスを改善し、スタイルシート、動的/コンテキスト依存イベントハンドリング、アクセシビリティ、データ永続性を提供します。
UIElements の多くの概念は、良く知られている Web テクノロジーに基づいています。XML、CSS、JQuery、HTML DOM、DOM イベントシステムを使っている場合は、既に多くの UIElements の概念を知っているかもしれません。
このガイドは、フレームワークの背後にある概念や、UIElements を使ってインタラクティブなユーザーインターフェース (UI) をビルドする方法を分かりやすく説明することで、UIElements を利用する助けになることを目的としています。
Unity は 3 つの UI ツールキットを提供します。以下の質問に対する答えに基づいて、UI ツールキットを選択すると良いでしょう。
ランタイム開発用 UI | ランタイムゲーム UI | エディター | |
---|---|---|---|
IMGUI | デバッグ用 | 非推奨 | ✔ |
UGUI | ✔ | ✔ | 利用不可 |
UIElements | 2019. x | 2020. x | 2019. 1 |
UIElements は、ゲームとエディター用、両方の UI 開発に最適なツールキットです。
UIElements は実験的な機能です。未完成であるため、API の変更が必要になる場合があります。UIElements はまだ開発中です。
また、2018.3 で加えられた UIElements の変更は古いバージョンにバックポートされません。アップグレードする場合は、その他の要素も Unity の以前のバージョンからアップグレードする必要があります。