Unity进阶之路(2)UI Toolkit

UI Toolkit是Unity内置的一个游戏UI解决方案。借鉴了web前端的设计模式。

web前端使用css,html,js。

其中css定义样式

html定义层级

js处理逻辑

UI Toolkit则是使用uss,uxml,C#

如果直接使用Unity提供的可视化UI创建工具创建UI面板,一个一个添加元素,只会生成uxml文件,样式直接通过内联样式的形式给出。

UI,User Interface的缩写。UI通常被认为是前端。所谓前端的本质,其实就是数据的映射。把数据映射成更加适合用户操作的模式,这就是前端。

我们通常需要解决几个问题:

数据输入:

数据处理:

数据输出:

在Unity中,我们可以从.csv文件中读取数据,作为数据的输入。这通常可以作为单机游戏的固定参数处理方式。比如各个等级的游戏数据。

如果涉及到联机模式,我们可能需要考虑从网络获取数据输入。

数据处理。Unity的UI Panel提供了事件和操纵器处理用户输入。

数据输出。我们需要把数据以一定的模式输出到用户界面。

在Unity的UI编辑器中,我们可以通过可视化的方式创建UI内容。这个UI是支持FlexBox模式的。

创建完成的UI Document如何使用呢

在场景的根节点下挂载一个空对象。

重命名为Screen。

在Screen上挂载一个UI Document组件。

把设置文件拖动到插槽中。

把刚才生成的uxml文件拖动到插槽中。

在Screen上挂载一个C#脚本。

可以使用UQuery语法在C#中查找到元素。

基础元素都是VisualElement类的对象。

类似于选择器语法。

然后可以直接对其上的style属性进行设置。

需要编写ScriptableObecjt来保存UI数据。

相关推荐
星河耀银海2 小时前
Unity基础:UI组件详解:Toggle开关的状态控制
ui·unity·lucene
ZC跨境爬虫2 小时前
UI前端美化技能提升日志day1:矢量图片规范与自适应控制栏实战
前端·css·ui·状态模式
ai_coder_ai3 小时前
自动化脚本ui编程之水平滚动布局(hscroll)
ui·autojs·自动化脚本·冰狐智能辅助·easyclick
ZC跨境爬虫3 小时前
UI前端美化技能提升日志day2:图片优化、字体本地化与设计美感解析
前端·javascript·ui·状态模式
南村群童欺我老无力.3 小时前
鸿蒙开发中的@Builder装饰器函数中的UI语法限制
ui·华为·harmonyos
qq_4523962316 小时前
第一篇:《UI自动化测试从零到一:为什么需要它?核心价值与挑战》
ui
深蓝海拓1 天前
基于QtPy (PySide6) 的PLC-HMI工程项目(十一)框架的进一步完善:UI的自动周期更新以及下行数据的生成和处理
网络·笔记·python·学习·ui·plc
qq_452396231 天前
第二篇:《主流UI自动化工具横向对比:Selenium、Cypress、Playwright、Puppeteer》
selenium·ui·自动化
hzxpaipai1 天前
[UI/UX 实战] 长页面交互优化:如何通过常驻侧边导航解决用户“浏览迷失”?
ui·ux
QC·Rex2 天前
Spring AI MCP Apps 实战:打造聊天与富 UI 融合的智能化应用
人工智能·spring·ui·spring ai·mcp