Unity Ugui 优化 DrawCall
1.使用Frame Debug
2.不要出现
如果有 给他替换成一像素透明
常见的是 image里的source没有赋值
3.mask 有两次dc 并且里外不能合并 可以用rect mask 2d 代替 这个只有一次
4.不同字体不能合并
5.可以把界面内使用的资源 都放一起 哪怕和别的文件夹里的资源有重复
Mask 与 RectMask2D 的区别
Mask 之所以会多出两个 DrawCall,是因为 Mask 的原理是 GPU 的 Shader 实现的,第一个 Mask 是一个在底层模板绘制一个区域的命令,根据 Image 传进来的图片 Alpha 值,确定裁剪区域,之后 Mask 节点下的元素会根据这个区域计算 Alpha 的值,最后一个 Mask 是绘制区域结束的指令,用于结束计算裁剪的操作。
RectMask2D 不需要 Image 图片作为裁剪区域,所以它的裁剪区域就是矩形大小,进而 CPU 计算元素是否在矩形区域之内,如果在区域之内,则节点常规方式合批之后进行顶点裁剪,而如果一个元素完全不在矩形区域内,则这个元素不会被渲染。因此将一个元素完全脱离矩形区域外,这个节点的 DrawCall 变为 0,而 Mask 却没有这个现象。
Mask 和 RectMask2D 的本质区别是 GPU 实现还是 CPU 实现。
还有一个工具就是profiler
这里可以看到打断的原因
可以看这个
http://www.laowangomg.com/?p=488
Unity Ugui 优化 DrawCall相关推荐
- Unity UGUI优化与原理【unity官方】
来源( 来源:unity官方 Optimizing Unity UI ) 官方链接: [1] https://unity3d.com/cn/learn/tutorials/temas/best-pr ...
- unity UGUI 优化
一.图片打成图集 drawCall 打断问题 当渲染一组UGUI时,中间有使用其他图集(或者UGUI自带组件)时,会打断drawcall 的批处理 但,当unity检测到中间图集延后渲染不影响原有效 ...
- Unity UGUI如何计算drawcall
看这个问题的时候,先来两张图,一样的ui,只是有一个遮挡为啥batches数据增加了1 我们用framedebug来慢放,你会发现 很明显的,文字覆盖了,打断了合批的问题,而原来是可以先渲染图片ima ...
- Unity基础知识学习五,UGUI优化相关
1.什么是UGUI优化,UGUI优化的理论基础 1.1理论基础 Canvas, 是Unity渲染系统给层状几何体( layered geometry )提供的可以被画入.被放在上面或者放在世界空间的 ...
- Unity 性能优化基础
文章目录 前言 一.代码层面 二.减少Rebatch和Rebuild 1.Rebatch 2.Rebuild 3.优化点 三.降低OverDraw 总结 前言 最近笔者在找工作,面试过程经常被问到工作 ...
- Unity UGUI Batches合批规则详解(含源码)
Unity UGUI Batches合批规则详解 在处理UGUI DrawCall问题的时候,我们经常遇到各式各样的问题. 问题1:在处理UGUI合批的时候,发现了一个面板父节点发生旋转,底下的UI合 ...
- 如何快速优化手游性能问题?从UGUI优化说起
WeTest 导读 本文作者从自身多年的Unity项目UI开发及优化的经验出发,从UGUI,CPU,GPU以及unity特有资源等几个维度,介绍了unity手游性能优化的一些方法. 在之前的文章< ...
- Unity 性能优化(力荐)
开始之前先分享几款性能优化的插件: 1.SimpleLOD : 除了同样拥有Mesh Baker所具有的Mesh合并.Atlas烘焙等功能,它还能提供Mesh的简化,并对动态蒙皮网格进行了很好的支持. ...
- 从CPU和GPU出发的UGUI优化
UGUI优化 就在前几天去B站面试实习岗位,发现学习的方向出现了一些小问题 对UGUI的优化理解出现了不小问题,面试之后,查询了不少的文章,并吸取他们的知识,对UGUI有了一定的理解,希望可以避免再出 ...
最新文章
- Asp.net 不安全端口 解决chrome浏览器访问时提示:ERR_UNSAFE_PORT
- spring-boot-maven-plugin 插件的作用(转)
- CSS选择器(转载)
- Python---已知Person类,继承Person类生成Teacher类(增加参数:科目)和Student类(增加参数:专业)。
- reportInterruptAfterWait
- Java线程更新ui_android使用多线程更新ui示例分享
- 多层感知机和神经网络的区别_1.3 多层感知机
- 贺岁喜剧《高兴》山寨歌舞大狂欢 陕西话的RAP
- 程序中减少使用if语句的方法集锦
- [转载] RGB与16进制色互转
- Spark安装和配置
- 尔雅 科学通史(吴国盛) 个人笔记及课后习题 2018 第十章 20世纪的科学技术变革
- 鸟哥的Linux私房菜(基础学习篇第四版)学习笔记
- Python3 百度拾取坐标系统API的调用
- 树莓派(zero w)——硬件介绍与系统开机
- 组装电脑基础知识之内存条
- 计算机组成原理中动态RAM与静态RAM的比较
- Go go test测试机制介绍及实例【Go语言圣经笔记】
- 她全奖赴海外读博,一作发Science,毅然回国后任东南大学教授!
- 苹果电池显示维修_苹果新款 iPhone SE 屏幕维修、电池更换多少钱?