IcyUI

IcyUI — библиотека пользовательского интерфейса для игр на .NET. Экраны описываются XML-разметкой или кодом на C#, оформляются темами и шаблонами элементов управления, привязываются к данным игры и управляются мышью, клавиатурой, геймпадом или касаниями. Ядро не зависит от движка; тонкие пакеты интеграции подключают его к Stride и MonoGame.

Примечание

IcyUI находится на ранней стадии альфа-версии (0.1.0-alpha). Библиотекой можно пользоваться, но API может меняться между альфа-выпусками.

Установка

Выберите пакет для своего движка — он подтянет основной пакет IcyUI автоматически.

dotnet add package IcyUI.Stride --prerelease
dotnet add package IcyUI.MonoGame --prerelease

Что дальше

Что внутри

  • XML-разметка с привязкой данных, ресурсами, стилями, визуальными состояниями и шаблонами элементов управления.
  • Встроенная тема по умолчанию.
  • Панели компоновки: Grid, StackPanel, WrapGrid, SplitPane и виртуализирующий ScrollViewer.
  • Элементы управления, например Button, CheckBox, Slider, TextBox, ComboBox, ListBox, TreeView, TabControl, Expander, Dialog, ColorPicker и PropertyGrid.
  • Переход между элементами с клавиатуры и геймпада, жесты касания, перетаскивание и масштабирование с учётом DPI.
  • Анимации.
  • Внутриигровой редактор интерфейса с горячей перезагрузкой — в отдельном пакете IcyUI.Design.

IcyUI — проект с открытым исходным кодом под лицензией MIT: github.com/IOExcept10n/IcyUI.