包含此页的版本:
不含此页的版本:
当您在运行时移动大量元素时,性能优化至关重要,特别是对于需要流畅且响应迅速的交互的应用程序。
某些 CSS 属性(例如 top、left、width、height 或 flex)可以在更新时触发布局重新计算。这些重新计算会弄脏布局,并可能跨多个元素级联更新,从而显着影响渲染性能。谨慎使用这些属性,并且仅在绝对必要时使用。
移动元素最高效的方法是使用style.translate财产。此属性动态调整元素的位置,而无需重新计算布局。与其他定位方法不同,style.translate在转换阶段运行。它通过减少对 CPU 密集型进程的依赖来最大限度地减少计算开销并提高渲染性能。
为了进一步提高性能,请利用使用提示来优化运行时元素的处理方式。使用提示有助于:
如果元素的转换(如位置、旋转或缩放)频繁更改,请将用法提示设置为DynamicTransform.这会将转换更新直接推送到 GPU,绕过 CPUmeshUnity 的主要图形原语。网格体构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 曲面必须转换为多边形。更多信息
请参阅术语表更新并提高性能。
你可以在UI Builder、UXML或C#中设置使用提示。以下示例将用法提示设置为DynamicTransform:
UXML的:
<ui:VisualElement usage-hints="DynamicTransform" />
C#:
visualElement.usageHints = UsageHints.DynamicTransform;
支持的使用提示包括:
下图说明了更新和呈现视觉元素实例化或派生自 C# 的可视化树的节点VisualElement类。您可以设置外观样式、定义行为并将其作为 UI 的一部分显示在屏幕上。更多信息
请参阅术语表运行时:
有关在运行时为频繁更改的元素优化渲染和更新的示例,请参阅在运行时移动元素。