Сегодня я обновил движок интерфейсов (и не только) до новой версии. Что в нём нового?
1) Асинхронный рендеринг: пока идёт передача данных на GPU и непосредственно отрисовка, одновременно с этим уже может готовиться следующий кадр не простаивая ресурсы впустую🔥
(Это касается только интерфейсов движка, в последствии этот движок также будет использоваться для партиклов, физики и ещё нескольких фич)
2) Новые инструменты для анимаций в интерфейсов вдохновлённые JetPack Compose, от DanBat'а:
// Вы создаёте переменную
var isHovered by remember(false)
// Указываете цвет в зависимости от состояния
val color = Color(
if (isHovered) "ffb703ff"
else "219ebcff"
)
// И оно автоматически вычисляет промежуточный цвет на основе указанной задержки и сглаживания
val animColor by animateColorAsState(color, tween(0.2f))
// Присваиваем цвет виджету
modifier.backgroundColor(animColor)
3) Встроенная поддержка
.ttf шрифтов4) Исправления многих багов и вылетов