您想找什么?
Engine & platform

用户界面工具包为程序员和艺术家提供新的和更新的演示程序

THOMAS KROGH-JACOBSEN / UNITY TECHNOLOGIESProduct Marketing Core Tech
Nov 27, 2023|9 Min
用户界面工具包为程序员和艺术家提供新的和更新的演示程序
为方便起见,此网页已进行机器翻译。我们无法保证翻译内容的准确性或可靠性。如果您对翻译内容的准确性有疑问,请参阅此网页的官方英文版本。

我们很高兴地宣布,我们推出了两个新的和更新的教学样本,以支持程序员和美工/设计师从不同角度使用 UI Toolkit 创建专业的游戏用户界面。

用户界面工具包提供了一套工具,用于为游戏和应用程序、Unity 编辑器的自定义扩展和运行时调试工具开发性能良好、可扩展的运行用户界面。如果你有开发网页或应用程序的经验,就会对它的核心概念和工作流程感到熟悉。

我们提供这些教学示例的目的是帮助您使用 UI Toolkit 构建丰富、反应灵敏和可扩展的用户界面。新演示 QuizU是两个完全不同的项目,每个项目都有大量的辅助教学内容

UI 工具包示例--Dragon Crashers 中的角色屏幕示例显示了游戏对象和 UI 元素的混合如何使屏幕充满活力和使用乐趣。
UI 工具包示例--Dragon Crashers 中的角色屏幕示例显示了游戏对象和 UI 元素的混合如何使屏幕充满活力和使用乐趣。
新:用户界面工具包 QuizU 演示
QuizU 项目是一个基于用户界面工具包的游戏。
QuizU 项目是一个基于用户界面工具包的游戏。

QuizU是一个以程序员为中心的交互式测验应用程序示例,它展示了 UI 工具包组件如何利用各种设计模式,在一个具有多个屏幕和游戏流程管理功能的小型游戏中协同工作。

演示由两部分组成:10 个小巧易懂的示例演示了 UI 工具包的不同方面,还有一个迷你问答游戏,将 10 个场景中的许多技术整合到一个完整的项目中。

小游戏的极简视觉风格让你专注于用户界面的机制实现,而不会迷失在设计细节中。

展示设计模式的可玩迷你游戏

该问答游戏说明了如何在游戏流程中使用状态模式、管理多个菜单屏幕、使用模型-视图-演示器模式、在 UI 工具包中实现事件处理等。游戏的玩法是一种非常简单的问答游戏机制,但其目的是展示和传授可以在自己的项目中使用的实施技术。

玩 QuizU 来了解设计模式和 UI 工具包如何协同工作。
玩 QuizU 来了解设计模式和 UI 工具包如何协同工作。

通过在项目中持续集成这些设计模式,可以提高代码的可读性,使代码库更加整洁。设计模式不仅能减少重构和测试时间,还能加快整个团队的开发进程。

此外,事件驱动架构(游戏组件通过事件相互通信)促进了松散耦合,从而提高了可扩展性和可测试性。

分块演示场景
从演示选择屏幕选择演示。
从演示选择屏幕选择演示。

演示的第二部分由 10 个小型演示场景组成。每个演示场景代表一种特定的技术或功能。在您为下一个项目评估 UI 工具包时,可将它们视为一套配方,为您提供启发和指导。以下是 UI 工具包功能和演示场景技术的简要示例:

  • 用户体验语言和视觉树:UXML 文件形成了用户界面元素的层次结构。这些视觉树是用户界面的蓝图。
  • Flexbox:灵活方框布局模型(Flexbox)提供了一种高效的布局模型,用于在容器中动态排列用户界面元素。
  • 统一样式表 (USS):USS 允许开发人员使用预定义的样式定制用户界面元素。重新设计用户界面只需交换样式表。
  • UQuery:UQuery 简化了在复杂的用户界面元素层次结构中进行搜索的过程,实现了对可视化树中特定用户界面组件的无缝导航。
  • 伪类:伪类可用于创建交互式和动画用户界面元素,只需极少的额外代码,就能为可视化界面添加额外的 "活力"(例如,当按钮悬停时将其放大,或在选择后改变文本字段的颜色)。
  • 用户界面工具包事件系统:UI Toolkit 拥有自己的事件系统,旨在处理用户界面的点击、更改和指针输入,甚至跨越复杂的层次结构。
  • 操纵器:操纵器将相关的事件回调封装到一个类中,从而提高了可重用性,并使定义用户交互变得更加容易(例如,用于库存系统的点击拖动操纵器、用于捏合缩放效果的手势操纵器等)。
  • 自定义控制:该演示展示了如何通过 UxmlFactory 和 UxmlTraits 类定义和实例化自定义 VisualElement。这些自定义控件可以通过脚本或用户界面生成器重复使用。

我们建议您使用 Unity 2022 LTS下载 QuizU。您还可以阅读我们在 Unity Discussions 上发布的一系列文章,这些文章与该演示同时发布。文章在这里:

已更新:用户界面工具包示例 - Dragon Crashers(2022 LTS)
在 Unity UI 工具包示例中显示横向和纵向响应式用户界面的图片
已针对 Unity 2022 LTS 进行更新:横向和纵向响应式用户界面

2022 年 9 月,我们推出了用户界面工具包样本--《龙争虎斗》(您可以阅读发布博文)。该演示在 2D 迷你 RPG 项目的一个切片上展示了全功能界面 Dragon Crashers的全功能界面演示,向您展示在自己的应用程序中利用 UI 工具包的技巧。这是电子书的配套作品 Unity 中的用户界面设计与实现的配套电子书《Unity 中的用户界面设计与实现》也将于 2022 年底发布。

您现在可以下载新版本的UI 工具包示例 - Dragon Crashersfor Unity 2022 LTS。最新版本的改进和更新包括

  • 通过主题和 UI 工具包中的 GeometryChangedEvent,支持运行时横向和纵向屏幕模式
  • 实施 SafeArea API,在设备的可用屏幕区域内包含用户界面功能
  • 将移动设备的每秒帧数限制提高到 60 帧
  • 重构、简化选择器和 USS 样式表
  • 更高分辨率的图标
  • 改进了针对不同屏幕比例和某些光标不一致情况的固定 VFX 生成位置
  • 重构设计模式,打造更简洁的用户界面架构
  • 通过教程检查器窗口提供新的学习内容
显示安全区域 API 如何在 Unity 的用户界面工具包中工作的图片,该 API 可帮助您将用户界面功能控制在设备的可用屏幕区域内。
该演示通过使用 SafeArea API 进行了更新,它可以帮助您将用户界面功能控制在设备的可用屏幕区域内。
新的用户指南和演示视频教程

我们还为更新后的项目添加了用户指南。这是对我们收到的用户反馈的回应,他们要求更好的指导内容,以帮助他们理解演示中使用的技术和功能。

最后,现在还提供了项目视频演示,帮助您浏览演示。看看吧

我们希望您能通过QuizU 和更新的用户界面工具包样本--"龙争虎斗"获得许多有用的技巧。您可以在Unity 最佳实践中心找到面向程序员、艺术家、技术艺术家和设计师的所有Unity 高级电子书。