Version: Unity 6.0 (6000.0)
言語 : 日本語
ユーザーインターフェース(UI)
UI Toolkit

Unity の UI システムの比較

UI Toolkit は、新しい UI 開発プロジェクトにおいて推奨される UI システムになることを意図しています。ただし現在のリリースでは、Unity UI (uGUI)Immediate Mode GUI (IMGUI) でサポートされている一部の機能が UI Toolkit にはありません。uGUI と IMGUI は特定の用途に適しており、古い機能のプロジェクトのサポートにも必要です。

このページでは、UI Toolkit、Unity UI、IMGUI の大まかな機能比較と、それぞれの UI デザインへのアプローチについて説明します。

一般的な考慮事項

以下の表は、ランタイムとエディターの推奨システムと代替システムを示しています。

Unity 6 推奨システム 代替システム
ランタイム Unity UI UI Toolkit
エディター UI Toolkit IMGUI

役割とスキルセット

チームのスキルセットやさまざまなテクノロジーへの対応レベルも重要な検討事項です。

以下の表は、さまざまな役割で推奨されるシステムを示しています。

役割 UI Toolkit Unity UI
(uGUI)
IMGUI スキルセット
プログラマー はい はい はい プログラマーは、あらゆるゲーム開発ツールや API を使用できます。
テクニカルアーティスト 部分的 はい いいえ Unity のゲームオブジェクトベースのツールやワークフローに慣れているテクニカルアーティストは、ゲームオブジェクト、コンポーネント、シーンビューを使って快適に作業できると考えられます。

UI Toolkit のウェブに似たアプローチや、IMGUI の純粋な C# アプローチには馴染めないかもしれません。
UI デザイナー はい 部分的 いいえ UI 作成ツールに精通している UI デザイナーは、UI Toolkit のドキュメントベースのアプローチに慣れており、UI Builder を使用して UI を視覚的に編集することができます。

ゲームオブジェクトのワークフローに慣れていない場合は、プログラマーやレベルデザイナーのサポートが必要な場合があります。

イノベーションと開発

UI Toolkit は現在も活発に開発が進められており、頻繁に新機能をリリースしています。Unity UI と IMGUI は、本番環境で使用が可能な、すでに確立されている UI システムですが、あまり更新されていません。

UI Toolkit ではまだ利用できない機能が必要な場合や、古い UI コンテンツのサポートや再利用を計画している場合は、Unity UI や IMGUI の方が適しているかもしれません。

ランタイム

UI Toolkit は、さまざまな画面解像度で動作する画面オーバーレイ UI を作成する場合に Unity UI の代わりに使用できます。UI Toolkit は、以下のような場合に検討してください。

  • 大量のユーザーインターフェースを使用して作業する場合
  • アーティストやデザイナーにとって使い慣れたオーサリングワークフローが必要な場合
  • テクスチャレスな UI レンダリング機能が必要な場合

Unity UI は、以下に対して推奨されるソリューションです。

  • 3D ワールドに配置されライティングされる UI
  • カスタムシェーダーとマテリアルを使用した VFX
  • MonoBehaviours からの簡単な参照

適用例

以下の表は、ランタイムの主なユースケースに推奨されるシステムを示しています。

Unity 6 推奨システム
UI プロジェクトで集中的に利用されるマルチ解像度メニューと HUD UI Toolkit
ワールド空間の UI と VR Unity UI
カスタマイズされたシェーダーとマテリアルを必要とする UI Unity UI

詳細

以下の表に、詳細なランタイム機能について推奨されるシステムを示します。

Unity 6 UI Toolkit Unity UI
WYSIWYG オーサリング はい はい
再利用可能なコンポーネントのネスト はい はい
グローバルスタイル管理 はい いいえ
レイアウトとスタイリングデバッガー はい はい
シーンのインテグレーション はい はい
リッチテキストタグ はい 可 *
スケーラブルなテキスト はい 可 *
フォントのフォールバック はい 可 *
適応型レイアウト はい はい
入力システムのサポート はい はい
シリアル化されたイベント いいえ はい
Visual Scripting のサポート いいえ はい
レンダーパイプラインとの互換性 はい はい
スクリーンスペース (2D) レンダリング はい はい
ワールド空間 (3D) レンダリング いいえ はい
カスタムマテリアルとシェーダー いいえ はい
スプライト / スプライトアトラスのサポート はい はい
動的テクスチャアトラス はい いいえ
テクスチャレス要素 はい いいえ
UI アンチエイリアス はい いいえ
矩形クリッピング はい はい
マスククリッピング いいえ はい
ネスト状のマスキング はい はい
UI の遷移アニメーション はい いいえ
アニメーションクリップとタイムラインとのインテグレーション いいえ はい

*TextMesh Pro パッケージが必要

Editor

UI Toolkit は、複雑なエディターツールを作成する場合に推奨されます。また、以下の理由からも UI Toolkit をお勧めします。

  • 再利用性と分離性の向上
  • UI をオーサリングするためのビジュアルツール
  • コードのメンテナンスとパフォーマンスのスケーラビリティの向上

IMGUI は、以下の点において UI Toolkit の代替になります。

  • エディターの拡張可能な機能へ無制限にアクセスできる
  • 画面上に UI をすばやくレンダリングするための軽量な API

適用例

以下の表は、エディターの主なユースケースに推奨されるシステムを示しています。

Unity 6 推奨システム
複合エディターツール UI Toolkit
プロパティドロワー UI Toolkit
デザイナーとのコラボレーション UI Toolkit

詳細

以下の表は、詳細なエディター機能に推奨されるシステムを一覧で示しています。

Unity 6 UI Toolkit IMGUI
WYSIWYG オーサリング はい いいえ
再利用可能なコンポーネントのネスト はい いいえ
グローバルスタイル管理 はい はい
レイアウトとスタイリングデバッガー はい いいえ
リッチテキストタグ はい はい
スケーラブルなテキスト はい いいえ
フォントのフォールバック はい はい
適応型レイアウト はい はい
デフォルト Inspectors はい はい
Inspector: カスタムオブジェクトタイプの編集 はい はい
Inspector: カスタムプロパティタイプの編集 はい はい
Inspector: 混合値 (複数編集) のサポート はい はい
配列とリストビューのコントロール はい はい
データバインディング: シリアル化されたプロパティ はい はい

追加リソース

ユーザーインターフェース(UI)
UI Toolkit