Skip to content

User Interface (UI)

achimmihca edited this page May 7, 2022 · 22 revisions

This guide has been written for people who want to contribute to UltraStar Play. A basic understanding of the Unity Editor is assumed. If you are new to Unity, you might want to start with an introduction to Unity.

UI Systems: Unity UI, IMGUI, UIToolkit

There are different UI systems in Unity, namely component based Unity UI, IMGUI, and the new UIToolkit (formerly called UIElements).

UltraStar Play is using the Unity's new UIToolkit. The workflow is very similar to web development with HTML and CSS.

UIToolkit

The newest UI system in Unity is called UIToolkit (formerly UIElements).

UIToolkit implements a subset of CSS, notably flexbox layout and styling by selectors. Further, UXML files define the structure of the UI hierarchy, just like HTML does in web development.

Unity UI (uUI)

The old user interface of UltraStar Play was developed with the component based Unity UI system (aka. uUI) that has been introduced with Unity 4.6 (see below).

However, the UI was migrated to UIToolkit with #231.

IMGUI

In earlier versions of Unity the so called Immediate Mode GUI (IMGUI) was the only officially supported UI system.

IMGUI is a code-driven GUI system that is mainly intended as a tool for programmers. It should only be used for debugging purposes.

Clone this wiki locally