Unity Mask合批情况验证

1.首先是两个Mask完全重合的情况下

每张图片使用的image都来自同一个图集


发现彼此之间是没有合批的,但是每个Mask内部是实现了合批的

经过计算此种情况的visiableList:mask1,IM1,IM2,mask2,IM3,IM4

mask1首尾2个drawcall,IM1和IM2合批,1个drawcall,mask2首尾2个drawcall,IM3和IM4合批,一个drawcall,再加上相机的默认HDR开启drawcall,总共7个批次
2.再看不完全重合的情况


发现mask1和mask2的首尾进行了合批

visiableList:mask1,mask2,IM1,IM2,IM3,IM4

mask1和mask2首尾合批,IM1,IM2,IM3,IM4合批
3.再看完全不重合的情况

最终队列和上面一样,只不过depth的计算稍稍不同
4.再看有元素完全不在Mask范围内的情况

最终队列也一样。这里和RectMask2D有所不同,IM3在完全不在Mask范围时,是会参与渲染的,但是如果在RectMask2D情况下,是不会参与渲染的,而且综合以上情况,发现即时在不同的Mask下的UI元素,满足合批条件的情况下也是能够合批的

相关推荐
李詹37 分钟前
游戏哪些接口会暴露源IP?_深度解析服务器通信安全隐患
游戏·游戏引擎·cocos2d·3dcoat
EQ-雪梨蛋花汤6 小时前
【Flutter】Flutter + Unity 插件结构与通信接口封装
flutter·unity·游戏引擎
折纸星空Unity课堂6 小时前
Unity之基于MVC的UI框架-含案例
ui·unity·mvc
暴走约伯6 小时前
【3DMax脚本MaxScript开发:创建高效模型虚拟体绑定和材质管理系统,从3DMax到Unreal和Unity引擎_系列第一篇】
3d·unity·材质·unreal·maxscript
北冥没有鱼啊6 小时前
UE 滚动提示条材质制作
游戏·ue5·游戏引擎·ue4·虚幻·材质
SlowFeather15 小时前
Unity 使用 ADB 实时查看手机运行性能
android·unity·adb·性能优化·profiler
工藤新一¹20 小时前
C++/SDL进阶游戏开发 —— 双人塔防游戏(代号:村庄保卫战 13)
c++·游戏·游戏引擎·毕业设计·sdl·c++游戏开发·渲染库
虾球xz1 天前
游戏引擎学习第247天:简化DEBUG_VALUE
c++·学习·游戏引擎
小赖同学啊1 天前
Unity 和 Unreal Engine(UE) 两大主流游戏引擎的核心使用方法
unity·游戏引擎·虚幻
工藤新一¹1 天前
C++/SDL 进阶游戏开发 —— 双人塔防(代号:村庄保卫战 14)
开发语言·c++·游戏引擎·游戏开发·sdl·实践项目