Skip to content

Release notes

1.1.0

Features

  • Sprites (including sprite-atlas sprites) can now be drawn directly via Image(Sprite) and by name through the resource provider (TryGetSprite); previously a sprite drew its entire atlas. Atlas rotation and tight-mesh packing are not yet supported.
  • Textboxes now support keyboard text selection: hold Shift while pressing Left, Right, Home, or End to select instead of moving the caret.

Updates

  • The in-game debugger now uses a single display mode: it only moves out of the way while you hold Ctrl to pick a widget beneath it, so its buttons stay clickable on hover. Width-resize is always available while it is open.
  • Removed the unused id parameter from EndTooltipContent; it now matches EndPanel/EndPopup (no argument).
  • Added UI.GetCaretPosition(textboxId) to read a textbox's caret index. Caret and selection state is now tracked per textbox, so two textboxes no longer share one caret.
  • Removed the unused location parameter from ShowPopup; a popup's position comes from the rect passed to BeginPopup.
  • Added safe-area support: ui.GetSafeAreaMargin() returns the device safe-area insets as a layout-space Margin, and ui.PushSafeAreaMargin() insets the current layout rect so content stays clear of notches and system bars.

Fixes

  • Fixed the textbox selection highlight being drawn too narrow: it stopped one character short of the selection and ignored the field's left padding on its right edge.

1.0.0

First stable release. An immediate-mode GUI for Unity games: build your entire HUD, menu, or debug overlay in C#, and it handles layout, input, animation, panels, and drawing. Works on URP, Built-in, and custom render targets. Includes 30+ debug widgets, an in-game debugger, an optional Lua layer, and five samples. API is stable from here on (SemVer).