Unity性能优化笔记——UI优化

这篇具有很好参考价值的文章主要介绍了Unity性能优化笔记——UI优化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

NGUI:

public class UIGeometry
{
   public BetterList<Vector3> verts = new BetterList<Vector3>();
   public BetterList<Vector2> uvs = new BetterList<Vector2>();
   public BetterList<Color32> cols = new BetterList<Color32>();
   public BetterList<<Vector3> mRtpVerts = new BetterList<Vector32>();
}


UGUI:

public class VertexHelper:IDisaposable
{
   private List<Vector3> m_Positions = ListPool<Vector3>.Get();
   private List<Color32> m_Colors = ListPool<Color32>.Get();
   private List<Vector2> m_Uv0s = ListPool<Vector2>.Get();
   private List<Vector2> m_Uv1s = ListPool<Vector2>.Get();
   private List<Vector3> m_Normals = ListPool<Vector3>.Gte();
   private List<Vector4> m_Tangents = ListPool<Vector4>.Get();
   private List<int> m_Indices = ListPool<int>.Get();
}

元素更新方式:
NGUI:
UIPanel.LateUpdate
1.轮询
2.UIPanel.UpdateWidgets

UGUI:
Canvas.SendWillRenderCanvas
1.队列
2.m_LayoutRebuildQueue
3.m_GraphicRebuildQueue
UGUI如果Canvas没有变化Canvas.SendWillRenderCanvas是完全没有开销的

处理隐藏显示元素方式
NGUI: 
      1.大量的SetActive(false),
      2.适量的Color.a = 0 ,移出 
      3.Time + 二级缓存
UGUI
      1.scale = 0,Alpha Group = 0

修改一个UI元素最终会转变成很多组的顶点属性,同过这些顶点属性转换成mesh。动态的UI元素要控制数组里面的顶点数。
对于制作的影响:
1.“动态”元素尽量少用OutLine.Tiled Sprite。
2.尽量减少“动态”长文本。

待补充。。。文章来源地址https://www.toymoban.com/news/detail-720870.html

到了这里,关于Unity性能优化笔记——UI优化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • sql:SQL优化知识点记录(三)

    简单的查询类型是:simple   外层 primary,括号里subquery  用到了临时表:derived   trpe反映的结果与我们sql是否优化过,是否是最佳状态息息相关 最简单的查询啥都没有改type就是all:表明的的检索是全表扫描   const:通过id查询,有索引查询很快  t1查询完之后作为一张临时表

    2024年02月10日
    浏览(47)
  • sql:SQL优化知识点记录(九)

    对sql调优的分析: 排序优化:  数据库的连接方式,里面的数据尽量这样连接,尽量选择第一个方式,因为两个表的连接一共建立5次连接,第二个建立1000次连接,从小表驱动大表方式来说选择第一种 B相当于部门, A是员工,通过部门id在部门表里面,部门是少量的,员工是

    2024年02月10日
    浏览(44)
  • sql:SQL优化知识点记录(五)

          上面的功能已经实现,但是分析功能, 使用explain分析这条sql: 发现type为All Extra:有Using filesort (文件内排序) 这两个是影响性能的    查看下这张表:只有一个主键索引  为这几个字段建立一个符合索引:   建立完索引后,在使用explain进行分析一下:type变成了r

    2024年02月10日
    浏览(51)
  • sql:SQL优化知识点记录(六)

      查看一下有没有建立索引: 用到索引中的一个:type中的ref决定访问性能  用到索引中的两个:通过key_len的长度可以看出来,比第一个大一点。或者通过ref:中用到了两个常量const 用到了三个索引:key_len比第二个又大了一点,用到了三个常量const 一下的结果都能查出,但是

    2024年02月10日
    浏览(42)
  • sql:SQL优化知识点记录(十一)

    新的一个优化的方式show Profile   运行一些查询sql: 查看一下我们执行过的sql   显示sql查询声明周期完整的过程:  当执行过程出现了下面这4个中的时,就会有问题导致效率慢  8这个sql创建了临时表导致sql变慢 Show Profile:记录了我们后台要开启的一些sql,全局查询日志呢,

    2024年02月09日
    浏览(85)
  • sql:SQL优化知识点记录(七)

      查询*, 百分号加右边,否则索引会失效 没建立索引之前都是全表扫描   没建立索引 建立索引: 建立索引 id是主键,他也可以从主键上取   覆盖索引要到了name,索引没有失效  覆盖索引要到了age,索引没有失效  不使用* 查找,覆盖索引没有失效 使用*查找:个数上超

    2024年02月09日
    浏览(57)
  • 前端面试的性能优化部分(12)每天10个小知识点

    👍 点赞,你的认可是我创作的动力! ⭐️ 收藏,你的青睐是我努力的方向! ✏️ 评论,你的意见是我进步的财富! HTTP缓存头是在HTTP响应中设置的指令,用于控制浏览器和代理服务器在客户端和服务器之间缓存内容的行为。以下是我对HTTP缓存头(如Cache-Control和ETag)的了

    2024年02月12日
    浏览(85)
  • 前端面试的性能优化部分(10)每天10个小知识点

    内联脚本和内联样式是将JavaScript代码和CSS样式直接嵌入到HTML页面中的做法。虽然这样做可以减少外部请求,但也可能对性能和可维护性产生影响。以下是处理内联脚本和内联样式以及它们对性能的影响的一些方法和考虑事项: 内联脚本的处理: 减少体积: 内联脚本会增加

    2024年02月12日
    浏览(55)
  • 前端面试的性能优化部分(6)每天10个小知识点

    首次内容渲染(First Contentful Paint,FCP)和首次有意义渲染(First Meaningful Paint,FMP)是衡量网页加载性能的指标,它们都关注页面加载过程中的用户体验。以下是我对这两个指标的理解: 首次内容渲染(FCP): 首次内容渲染是指从页面加载开始到浏览器首次绘制页面上的任何

    2024年02月13日
    浏览(47)
  • 前端面试的性能优化部分(5)每天10个小知识点

    渲染性能优化是指通过各种技术和策略,提高应用程序在浏览器或移动设备上绘制和渲染UI的速度和效率。在处理大型数据集或复杂UI时,渲染性能优化尤为重要,以确保流畅的用户体验和高效的应用程序运行。 以下是一些渲染性能优化的方法,特别适用于处理大型数据集或

    2024年02月14日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包