UX 组件(非画布)- MRTK3
此包包含一个使用非画布、非 RectTransform 组件实现混合现实设计语言的 UX 组件库。
选择为项目使用非画布预制件时,应谨慎决定。 在大多数情况下,画布预制件库会更加灵活、可重用和可维护,尤其是在你与大量工程师和设计师协作生成大型应用程序时。 此外,基于画布的组件提供了大多数设计师期望能够使用的新式设计工具。。 但也需要考虑性能:画布组件的灵活性和功能集可能具有更高的成本。 如果你正在生成具有数百个同时可见元素的特大型 UI,你可能希望选择非画布预制件,以提高批处理和绘制调用效率。
下表概述了在为应用程序选择使用哪些组件时可能希望考虑的一组标准。 此外,参阅文档,详细了解混合画布 UI 系统的工作原理,并说明相应的优缺点。
条件 | 画布 | 非画布 |
---|---|---|
调整大小和布局 | 实时调整大小、动态布局、水平/垂直/网格布局、边距/栏距、填充、收缩百分比 | 没有调整大小或布局。 手动对所有内容定位和调整大小。 |
滚动/剪裁 | 滚动和每像素精确的剪裁(带圆角)是免费的。 | 没有滚动功能;剪裁需要每渲染器配置。 |
团队规模 + 项目 | 可重用和灵活的组件使大型团队更加高效和一致 | 大量的预制件和不灵活的设计/布局使大型团队难以保持一致 |
学习曲线 | Unity UI 知识+经验推荐 | 无需之前具有 Unity UI 经验 |
2D 鼠标输入 | 是 | 是 |
丰富的卷 XR 输入 | 是 | 是 |
主题设置 | 正在进行的工作 | com.microsoft.mrtk.data |
本地化 | 正在进行的工作 | 正在进行的工作 |
屏幕上的 UI 元素数量 | 最适合小型布局 | 面向数百/数千元素的更好的批处理性能 |