【Unity UI】UI Toolkit:构建高性能游戏UI的新篇章

引言

Unity平台不断演进,为游戏开发者提供了更强大的工具和工作流。UI Toolkit作为Unity中用于构建用户界面的一套全新解决方案,正逐渐成为开发者在设计游戏UI时的首选。本文将深入探讨UI Toolkit的核心特性、优势以及如何利用它打造专业水准的UI。
在这里插入图片描述

UI Toolkit简介

UI Toolkit提供了一系列工具,用于开发游戏和应用程序中的高性能和可扩展的运行时UI,包括Unity编辑器的自定义扩展和运行时调试工具。如果您有开发网页或应用程序的经验,其核心概念和工作流程将会非常熟悉。

新增:QuizU演示项目

QuizU项目是一个基于UI Toolkit的游戏。它是一个以程序员为中心的交互式测验应用程序示例,展示了UI Toolkit组件如何协同工作,利用各种设计模式,在具有多个屏幕和游戏流程管理的小型但功能完备的游戏中。
在这里插入图片描述

QuizU演示的组成

演示由两部分组成:

  1. 10个小型示例:这些示例展示了UI Toolkit的不同方面。
  2. 迷你测验游戏:将10个场景中的多种技术整合到一个完整的项目中。

设计模式和UI Toolkit的结合

迷你游戏演示了如何使用状态模式进行游戏流程管理、管理多个菜单屏幕、使用模型-视图-呈现者模式、在UI Toolkit中实现事件处理等。游戏玩法是一个简单的测验机制,但其目的是展示和教授您可以在您自己的项目中使用的实现技术。

演示场景

第二部分由10个小型演示场景组成,每个场景代表一个特定的技术或功能。这些可以视为一组食谱,旨在在评估UI Toolkit时激发灵感并提供指导。
在这里插入图片描述

演示场景展示的UI Toolkit特性和技巧:

  • UXML和视觉树:UXML文件形成UI元素的层次结构。这些视觉树作为用户界面的蓝图。
  • Flexbox:灵活的盒子布局模型(Flexbox)为在容器内动态排列UI元素提供了高效的布局模型。
  • Unity样式表(USS):USS允许开发者使用预定义的样式自定义UI元素。通过更换样式表即可轻松换肤UI。
  • UQuery:UQuery简化了在复杂的UI元素层次结构中搜索的过程,实现了在视觉树中特定UI组件的无缝导航。
  • 伪类(Pseudo-classes):伪类可用于通过最少的额外代码创建交互式和动画UI元素,为您的视觉界面增添额外的“活力”。
  • UI Toolkit事件系统:UI Toolkit拥有自己的事件系统,旨在处理UI的点击、更改和指针输入,即使是在复杂的层次结构中。
  • 操作器(Manipulators):将相关的事件回调封装成单个类,操作器促进了可重用性,并使定义用户交互(例如,库存系统的点击和拖动操作器,捏合缩放效果的手势操作器等)变得更容易。
  • 自定义控件(Custom Controls):演示展示了如何通过UxmlFactory和UxmlTraits类定义和实例化自定义VisualElement。然后,这些自定义控件可以通过脚本或UI构建器重复使用。

更新:UI Toolkit Sample – Dragon Crashers(2022 LTS)

《龙之破坏者》(Dragon Crashers)的UI Toolkit示例现已更新,支持Unity 2022 LTS。这个演示是一个完整的界面,展示了如何在您自己的应用程序中利用UI Toolkit。它是电子书《Unity中的用户界面设计和实现》的配套作品,该书于2022年底发布。
在这里插入图片描述

更新内容包括:

  • 通过主题和UI Toolkit中的GeometryChangedEvent支持运行时横屏和竖屏屏幕模式。
  • 实现SafeArea API,以将UI功能包含在设备的可用屏幕区域内。
  • 将移动设备的fps限制提高到60fps。
  • 重构、简化选择器和USS样式表。
  • 更高分辨率的图标。
  • 改进了针对不同屏幕比例的固定VFX生成位置和一些光标不一致性。
  • 为更清洁的UI架构重构了设计模式。
  • 通过Tutorial Inspector窗口提供的新学习内容。
    在这里插入图片描述

结语

我们希望您能通过《QuizU》和更新的《UI Toolkit Sample – Dragon Crashers》学到许多有用的技巧。

  • 22
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Unity打怪升级

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值