Unity provides the following user interface (UI) toolkits for creating UI(User Interface) Allows a user to interact with your application. More info See in Glossary 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 scriptsA piece of code that allows you to create your own Components, trigger game events, modify Component properties over time and respond to user input in any way you like. More info See in Glossary that implement the OnGUI function, to draw and manage its user interface. IMGUI is used for creating in-game debugging displays, custom inspectorsA Unity window that displays information about the currently selected GameObject, Asset or Project Settings, alowing you to inspect and edit the values. More info See in Glossary 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
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.