时间轴术语表
UIElements Developer Guide

UI

Unity provides the following user interface (UI) toolkits for creating UI in either the Unity Editor or in a game or application:

  • UIElements: User Interface Elements (UIElements) is a retained-mode UI toolkit for developing user interfaces in the Unity Editor. UIElements is based on recognized web technologies and supports stylesheets, dynamic and contextual event handling, and data persistence.
  • Unity UI: Unity User Interface (Unity UI) is a simple UI toolkit for developing user interfaces for games and applications. Unity UI is a GameObject-based UI system that uses components and the Game View to arrange, position, and style the user interface. You cannot use Unity UI for user interfaces within the Unity Editor.
  • IMGUI: Immediate Mode Graphical User Interface is a code-driven UI toolkit that is mainly intended as a tool for developers. IMGUI uses the OnGUI function, and scripts that implement the OnGUI function, to draw and manage its user interface. IMGUI is used for creating in-game debugging displays, custom inspectors for script components, and editor windows or tools that extend the Unity Editor. It is not recommended for game or application user interfaces.

Selecting a UI toolkit

You should select a UI toolkit based on your answers to the following questions: * Are you developing for a game or application, or a tool or extension to the Unity Editor? * If you are developing for a game or application, are you shipping the UI with the game or application?

Runtime dev UI Runtime game UI Unity Editor
UIElements TBD TBD ✔
Unity UI ✔ ✔ not available
IMGUI for debugging not recommmended ✔

Disclaimer

UIElements is still in active development. It is poised to become the recommended UI toolkit for both in-game and Unity Editor UI development. Until then, there are some features that are available in Unity UI and IMGUI that have yet to be added to UIElements.

In addition, changes to UIElements might not be backported to previous versions of Unity. If you upgrade, you will also need to upgrade your interface from previous Unity versions.


时间轴术语表
UIElements Developer Guide