网易首页 > 网易号 > 正文 申请入驻

【厚积薄发】1个额外相机、400个DrawCall:简单画面为何不简单

0
分享至


这是第486篇UWA技术知识分享的推送,精选了UWA社区、UWA AI问答的热门话题等技术知识点,助力大家更全面地掌握和学习。

UWA社区主页:community.uwa4d.com

UWA QQ群:793972859

本期目录:

  • UI简单,DrawCall为何接近400

  • 只显示一个模型的Camera,为何耗时仍然很高

本次推送的实战案例来自于使用UWA服务的项目的真实且典型的问题。UWA将关键线索、定位路径与处理建议整理成了可复用的案例笔记,便于大家快速对照、排查自身项目中的同类问题。

实战案例

Q:我们在测试过程中发现,部分玩法画面从视觉上看并不算复杂,但运行时的UI相关开销却比较高。画面中并没有直观可见的大量复杂内容,为什么UI相关开销还是比较高?这类问题应该从哪些方向继续定位?

A:这个问题的关键在于,UI画面的视觉复杂程度和实际渲染开销并不是完全对应的。开发者通常会根据画面中能看到多少图片、文字和控件来判断UI压力,但UGUI的渲染成本还会受到绘制批次数量、UI元素组织方式以及更新频率等因素影响。即使最终画面看起来并不拥挤,只要UGUI产生了大量独立的绘制批次,渲染提交开销同样会明显升高。

从UWA GOT Online报告可以看到,渲染模块中的Canvas.RenderSubBatch调用次数区间峰值达到394次。在这份报告的分析口径中,该节点的调用次数可以用来观察相应帧中的UGUI DrawCall数量变化。极端情况下,项目的UGUI DrawCall数量达到300~400的水平,说明UI侧需要提交的绘制批次已经处于较高水平。


这里需要注意,UGUI DrawCall较高,并不等于画面中一定存在大量可见控件。场景中的部分玩法表现可能通过UI组件实现,再叠加UI特效、TMP文本等内容后,即使画面看起来并不复杂,实际参与渲染和更新的UI对象仍可能很多。至于具体哪些元素破坏了合批,目前仅凭报告还无法直接确定,需要结合项目结构和渲染调试数据继续确认。

同时,该问题也反映在CPU侧的UI处理开销上。UI模块CPU耗时平均达到7.85ms,说明它不仅带来了较多渲染批次,同时也占用了较多CPU时间。对于目标帧率为60FPS的项目,一帧总预算约为16.67ms,UI模块长期占用接近8ms,会明显压缩逻辑、动画和其他渲染工作的执行空间。


从整体曲线来看,渲染模块和UGUI相关耗时的变化趋势非常接近。这种相关性说明,当前渲染开销的波动与UI侧存在较强关联,排查时不能只停留在渲染模块,还需要继续查看UI更新流程。


在UI模块中,主要耗时入口是UpdateBatches。该流程负责处理UI元素更新和渲染批次整理。当图片颜色、文本内容或其他UI属性发生变化时,相关Canvas需要更新对应的渲染数据。UI Particle、TMP等相对复杂且更新频繁的对象,也可能增加UI更新开销。

如果需要进一步定位具体是哪些UI元素频繁触发Canvas更新,可以在Canvas.SendWillRenderCanvases相关流程中进行插桩,在运行时记录触发更新的UI对象,从而找到持续触发Canvas刷新的元素。定位到具体对象后,再结合UI层级、更新频率和使用方式进行针对性优化。具体实现方式可以参考雨松MOMO对UGUI网格重建定位的分析方法:《UGUI研究院之找到具体某个引起了网格重建的UI元素(三十二)》。

https://www.xuanyusong.com/archives/4573


如果动态UI和大量静态UI混合在同一个Canvas中,少量元素变化还可能扩大更新影响范围。因此,优化不能只停留在“删掉一些UI”,而应分别处理绘制批次和更新成本:一方面结合渲染调试数据检查各类UI元素的合批情况,确认是否存在不必要的批次拆分;另一方面定位高频变化的UI对象,将需要频繁更新、激活或隐藏的内容与静态UI适当拆分,缩小每次更新影响的范围。

实战案例

Q:项目中为了避免特定模型受到近裁剪面的影响,单独增加了一个Camera,用于控制该模型的显示。这个Camera只在特定玩法场景中启用,也只负责该模型的渲染。在一些近距离显示场景中,如果模型距离Camera过近,可能会受到近裁剪面(Near Clip Plane)的影响,导致模型部分区域被裁切或无法正常显示。在本项目中,为了解决这一显示问题,通过额外Camera调整裁剪范围,对该模型进行独立渲染。但从UWA GOT Online报告来看,这个Camera在整个测试过程中的平均耗时已经接近常驻的UI Camera。明明只渲染一个模型,为什么仍会产生这么高的开销?这种情况应该如何优化?


A:为了满足特殊显示需求,增加额外Camera是比较常见的做法,但Camera带来的成本并不只取决于它最终绘制了多少个物体。即使最终画面中只有少量内容,新增Camera仍需要单独完成渲染准备、可见性判断、渲染队列处理和指令提交等流程。因此,显示内容数量并不完全等同于Camera自身的渲染成本。

从UWA GOT Online报告的Stacks节点可以看到,常规场景中存在两个Camera,进入特定玩法后增加到三个,过场阶段又增加到四个。通过Camera数量的变化,可以快速确认额外Camera在哪些场景中启用,并判断数量是否符合预期。


新增Camera仅用于显示单个模型,但平均耗时已经接近一直存在的UI Camera。虽然两者承担的功能不同,不能仅凭耗时接近就认定Camera配置存在异常,但对于这种额外Camera来说,这部分成本已经不能忽略。

排查时,可以先查看对应Camera的耗时堆栈,确认Culling等相机管线节点占用了多少时间,再分别测试保留原始配置、调整Culling Mask和完全关闭Camera三种状态,从而区分模型渲染成本和Camera额外流程带来的开销。

Camera配置也需要逐项核对。阴影、后处理、Occlusion Culling、独立RenderTexture等功能是否确有必要,都可能影响最终成本。过场Camera启用后,还要确认主场景Camera和额外Camera是否仍在继续渲染,避免画面已经被覆盖,后方Camera却仍然执行完整流程。

优化时,应优先控制Camera的启用时机,只在该模型确实需要独立显示时开启,并关闭与当前显示需求无关的功能。完成配置精简后,如果耗时仍然较高,再结合项目使用的渲染管线,评估是否可以将该模型纳入已有Camera渲染流程,或采用Renderer Feature等方式替代额外Camera。

以上分析并不意味着额外Camera一定不能使用。真正需要关注的是,它带来的画面收益是否与性能成本匹配。当一个仅用于显示单个模型的Camera,其平均耗时已经接近常驻UI Camera时,就应将其列为重点排查对象,避免为了局部显示需求,长期承担一套额外的渲染流程。

无论是社区里开发者们的互助讨论,还是AI基于知识沉淀的快速反馈,核心都是为了让每一个技术难题都有解、每一次踩坑都有回响。希望这些从真实开发场景中提炼的经验,能直接帮你解决当下的技术卡点,也让你在遇到同类问题时,能更高效地找到破局方向。

封面图来源于网络

今天的分享就到这里。生有涯而知无涯,在漫漫的开发周期中,我们遇到的问题只是冰山一角,UWA社区愿伴你同行,一起探索分享。欢迎更多的开发者加入UWA社区。

UWA官网:www.uwa4d.com

UWA社区:community.uwa4d.com

UWA学堂:edu.uwa4d.com

点击下方名片关注我们,将我设为星标,及时接收小编每日推送哦,性能优化不迷路~

近期精彩回顾


特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
改革开放后有三大耻辱,件件都是民族伤疤。1993年、1999年、2001年这三个年份对中国人而言,每个数字背后都是一段屈辱经历

改革开放后有三大耻辱,件件都是民族伤疤。1993年、1999年、2001年这三个年份对中国人而言,每个数字背后都是一段屈辱经历

扶苏聊历史
2026-10-28 15:05:54
45岁女星自曝分手两年不约会:从没跟不熟的人吃过饭

45岁女星自曝分手两年不约会:从没跟不熟的人吃过饭

自愈小日子
2026-10-28 03:33:18
53对50,以色列投票准时结束,内塔尼亚胡没输席位,输掉的是组阁空间

53对50,以色列投票准时结束,内塔尼亚胡没输席位,输掉的是组阁空间

阿天爱旅行
2026-10-28 19:31:55
王姬现状:在美国生活,女儿女婿住北京旧房,坚持照顾33岁病儿子

王姬现状:在美国生活,女儿女婿住北京旧房,坚持照顾33岁病儿子

凛若秋霜
2026-10-29 07:49:42
为避免在韩国市场引发争议,苹果悄悄移除当地官网iPad mini(A20 Pro)海报中的手部

为避免在韩国市场引发争议,苹果悄悄移除当地官网iPad mini(A20 Pro)海报中的手部

IT之家
2026-10-27 18:27:17
和姆巴佩签约6个月就解约:东鹏这笔代言费,到底亏了多少

和姆巴佩签约6个月就解约:东鹏这笔代言费,到底亏了多少

陈意小可爱
2026-10-28 16:04:11
小博索纳罗流亡美国,扔下6000万支持者,给卢拉解决了大麻烦

小博索纳罗流亡美国,扔下6000万支持者,给卢拉解决了大麻烦

影孖看世界
2026-10-28 15:26:06
活久见!30万年薪保安岗:洛阳钼业招100名驻外安保,地点刚果金,评论彻底沸腾

活久见!30万年薪保安岗:洛阳钼业招100名驻外安保,地点刚果金,评论彻底沸腾

火山詩话
2026-10-28 17:32:30
噩耗传来:被中国隐藏40年的巨星陨落!

噩耗传来:被中国隐藏40年的巨星陨落!

华人星光
2026-10-27 12:20:10
山口百惠,该出手了

山口百惠,该出手了

我来我看见
2026-10-28 20:57:33
扎克伯格把合伙人30%股份稀释到0.03%,展现资本世界的残酷

扎克伯格把合伙人30%股份稀释到0.03%,展现资本世界的残酷

三农老历
2026-10-28 02:45:29
奥斯卡谈姆巴佩不当言论:我很难过,希望更多外籍球员尊重中国,尊重中国人民,我在中国生活了八年,我深怀感激也倍感自豪

奥斯卡谈姆巴佩不当言论:我很难过,希望更多外籍球员尊重中国,尊重中国人民,我在中国生活了八年,我深怀感激也倍感自豪

极目新闻
2026-10-29 13:02:02
CCTV5直播,中国男篮VS沙特男篮,广东三国手落选,郭士强冲首胜!

CCTV5直播,中国男篮VS沙特男篮,广东三国手落选,郭士强冲首胜!

体坛小快灵
2026-10-29 07:53:58
越来越妖!42岁詹姆斯发威,又达成80年独一无二纪录,晚辈难破了

越来越妖!42岁詹姆斯发威,又达成80年独一无二纪录,晚辈难破了

大西体育
2026-10-29 10:41:19
人民日报锐评批日剧《VIVANT》“投毒”:公然挑战人类良知

人民日报锐评批日剧《VIVANT》“投毒”:公然挑战人类良知

澎湃新闻
2026-10-28 17:14:04
信访新规强调:越级上访就问责!可如果基层不受理,该到哪说理去

信访新规强调:越级上访就问责!可如果基层不受理,该到哪说理去

细说职场
2026-10-26 12:52:07
反诈博主吴恺遇害案细节流出!司法鉴定提及“其自身有高血压促发死亡”,本人无直系亲人,养兄弟拿50万签署谅解书

反诈博主吴恺遇害案细节流出!司法鉴定提及“其自身有高血压促发死亡”,本人无直系亲人,养兄弟拿50万签署谅解书

火山詩话
2026-10-29 05:44:29
比赖清德更狂的人出现了,一旦她当上台湾领导人,我军必定收台!

比赖清德更狂的人出现了,一旦她当上台湾领导人,我军必定收台!

晓肂爱八卦
2026-10-20 11:32:57
姆巴佩恐面临6亿天价赔偿,震惊全球!

姆巴佩恐面临6亿天价赔偿,震惊全球!

互联网品牌官
2026-10-29 12:16:13
申京伤停5连胜!火箭132-100雄鹿,看数据:他是头号功臣!

申京伤停5连胜!火箭132-100雄鹿,看数据:他是头号功臣!

运筹帷幄的篮球
2026-10-29 09:08:40
2026-10-29 13:35:00
侑虎科技UWA incentive-icons
侑虎科技UWA
游戏/VR性能优化平台
1637文章数 989关注度
往期回顾 全部

科技要闻

MacBook终于能触屏了:22999元起

头条要闻

女子展示iPhone Duo:开合不到8次 拿到第一天就"爆屏"

头条要闻

女子展示iPhone Duo:开合不到8次 拿到第一天就"爆屏"

体育要闻

普通人徐嘉余的入口与出口

娱乐要闻

李嘉格自曝离婚内情:过错方净身出户

财经要闻

“对不起,我们不投具身智能了”

汽车要闻

首销期权益价23.98万起 2026款理想i6上市

态度原创

旅游
家居
数码
房产
公开课

旅游要闻

四川觉苑寺明代壁画被游客用强光照射!当地承认劝阻不够及时

家居要闻

2026建博会(广州) 公装联探展交流活动

数码要闻

AMD FSR SDK 2.4发布,为Vulkan图形API带来"Redstone"特性

房产要闻

12.1亿!三亚挂出重磅宅地!

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版