看这个问题的时候,先来两张图,一样的ui,只是有一个遮挡为啥batches数据增加了1

我们用framedebug来慢放,你会发现

很明显的,文字覆盖了,打断了合批的问题,而原来是可以先渲染图片image,在渲染文字的

ugui合批原理

UGUI在合批之前,会根据ui的Depth、MatID 、ImgID、RendererOrder进行排序,之后对相邻的UI进行检测,判断ImgID和MatID是否相同,如果相同则可以进行合批处理,如果这两个UI的MatID和ImgID都相同,但是不连续,中间有其他不同MatID或ImgID的UI则会打断合批。

Depht排序:

先筛选掉Depht为-1的值,这部分默认不渲染

接着判断是否该元素底部是否有物体,如果没有则赋值Depth为0,如果盖住物体(这块是通过Mesh进行判断,判断Mesh是否相交)则等于底部盖住的UI元素中Depth最大的值+1、

如果两个相邻元素通过了合批测试,则这两个相邻元素的深度值相等。

深度排序之后,就会根据matID进行排序,如果材质相同则对ImgID进行排序,如果也相同,那会根据inspection面板上的RendererOrder,最后真正进行UI的合批。

Unity UGUI如何计算drawcall相关推荐

  1. Unity Ugui 优化 DrawCall

    1.使用Frame Debug 2.不要出现 如果有 给他替换成一像素透明 常见的是 image里的source没有赋值 3.mask 有两次dc 并且里外不能合并 可以用rect mask 2d 代 ...

  2. UGUI的DrawCall和Rebuild

    1.DrawCall的概念 DrawCall是CPU调用图像编程接口,命令GPU进行渲染的操作.造成DrawCall过高的性能瓶颈其实是CPU而不是GPU.UGUI的合并原理是将相同的材质进行合并操作 ...

  3. Unity UGUI Batches合批规则详解(含源码)

    Unity UGUI Batches合批规则详解 在处理UGUI DrawCall问题的时候,我们经常遇到各式各样的问题. 问题1:在处理UGUI合批的时候,发现了一个面板父节点发生旋转,底下的UI合 ...

  4. Unity UGUI优化与原理【unity官方】

    来源( 来源:unity官方 Optimizing Unity UI ) 官方链接: [1]  https://unity3d.com/cn/learn/tutorials/temas/best-pr ...

  5. Unity UGUI Rect

    Unity UGUI Rect rect.x与rect.y rect.min和rect.max rect.center rect.x与rect.y x,y就是rect类的根坐标,有了它我们就能确定我们 ...

  6. Unity UGUI Button 中文详解-Chinar

    Chinar blog :www.chinar.xin Unity UGUI 完整系列教程 (Chinar中文图解) Unity UGUI Button 组件 本文提供全流程,中文翻译. Chinar ...

  7. 【游戏开发实战】Unity UGUI Text图文混排(聊天文字混表情),支持动态表情,出招吧表情帝

    文章目录 一.前言 二.最终效果 三.具体使用 1.导入表情素材 2.设置图片格式 3.生成表情图集 4.UI-EmojiFont.shader 5.材质球 四.测试 五.结束语 一.前言 点关注不迷 ...

  8. Unity UGUI实现图文混排

    目前在unity实现图文混排的好像都是通过自定义字体然后在文本获取字符的位置,用图片替换掉图片标签,这样对于支持英文来说,并没有什么影响.然后对于中文来说就是一个相当麻烦的事了,毕竟图文混排多用于游戏 ...

  9. Unity UGUI图文混排源码(二)

    Unity UGUI图文混排源码(一):http://blog.csdn.net/qq992817263/article/details/51112304 Unity UGUI图文混排源码(二):ht ...

最新文章

  1. 部署CFCA_RA本地测试环境
  2. html5 go语言运行环境,GO环境搭建-Go语言中文社区
  3. wxWidgets:wxSysColourChangedEvent类用法
  4. 小白学习机器学习---第六章:SVM算法原理(1)
  5. 超级管理器Android,超级文件管理器app
  6. (8)VTK 鼠标左右键控制模型旋转
  7. 全网最全sql入门经典
  8. html 音乐代码生成器,在线自动生成音乐播放器
  9. 经济学和哲学_边做边学的哲学
  10. vga是计算机的什么接口,VGA/DVI/HDMI三种接口有什么区别?
  11. jsp房屋出租管理系统带合同
  12. 双十一海量数据下EagleEye的使命和挑战
  13. kendoUI模板概述(template)
  14. 出入库管理系统php,php销售供应链管理系统
  15. 基于互联网+居民健康管理平台技术方案
  16. Ecplise捕捉异常的快捷键
  17. 推荐学习hadoop入门几本书(中文版)
  18. 搭建keil开发环境,完成一个基于STM32汇编程序的编写
  19. CVPR 2022上人脸识别相关的论文分类整理
  20. Netty实战(一)

热门文章

  1. pelican github搭建博客
  2. Java开发工具中Compile、Make和Build的区别
  3. 数字图像处理第二章:基本概念
  4. 雅思核心词拾遗03----Nature Science Society Technology
  5. MySQL设置密码的三种方法
  6. 实现一款简单的RPG游戏
  7. DOS命令让电脑发射wifi
  8. java基础算法题(含答案)
  9. 【java算法题大全】设计一个抽奖程序,要求已经抽过的不能再抽,可以自定义参加抽奖人数以及奖品
  10. SDK(Software Development Kit, 即软件开发工具包 )