这是第270篇UWA技术知识分享的推送。今天我们继续为大家精选了若干和开发、优化相关的问题,建议阅读时间10分钟,认真读完必有收获。
UWA 问答社区:answer.uwa4d.com
UWA QQ群2:793972859(原群已满员)
本期目录:
- 使用Sprite Packer对UI图集进行打包的问题
- Unity处理视锥剔除的问题
- Profiler查看Shader.CreateGPUProgram的具体Shader信息
- PPS的UberPost内存占用较高
UI
Q:使用Sprite Packer对UI图集进行打包:
1. 使用系统自带的Sprite Packer打包,图集大小设置成1024,这样打出来的图集会分为好几个Group,那么相同图集不同Group能够合批吗?
2. 由于Sprite Packer是自动分配的Group,这种情况下打开功能的时候是所有Group都会加载的,那么这种设置1024是否还有必要,改成2048会不会好一点?
3. 图集设置成2048变大了,对加载速度和内存有影响吗?这个需要按图集里图片数量多少做不同的设置吗?
A:可以参考以下答案:
1. 不同Group是不会合批的,一般也没有UI图集大小的建议。
2. 最好自己手动控制图集的Group,在UI制作时可以以UI Prefab为单位收集一下哪些Group的图集是当前UI需要使用的,加载UI预设时按需加载对应的Group就好了。
3. 如果图集中的图片资源都用到了,同时图集的填充率也差不多,那加载1张2048和4张1024,对加载影响可能并不是很明显,内存占用也是一样的,但如果2048填充率并没那么高,或许1024的会比较好。
该回答由UWA提供,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/6163e8f58f8c834241d6df7d
Rendering
Q:最近在研究场景管理的问题,想了解Unity是否有处理视锥剔除,于是做了测试(Unity 2020.3.11f)。创建了两个Cube,移动第二个Cube,对比顶点数量变化。
为什么同样在视锥体范围内,批次和顶点数会不同?当第二个Cube不在视锥范围内,顶点数也可能不同,那Unity是否有视锥剔除,其处理逻辑是怎么样的?
A:应该是灯光绘制ShaowMap时候,投影的范围将那个相机外的Cube包进去了,受Light的影响,关了Light就可以了。
感谢范世青@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/616119748f8c834241d33b81
Shader
Q:由于目前项目Shader挺复杂的,变体也非常的多,如果用ShaderVariantCollection的方式解析一次耗时太高了,而且如果用Shader.CreateGPUProgram耗时很高并且频率也很高,所以就想问下:有没有什么办法可以知道是哪个Shader造成的?这样我才好做策略去解决。
我以前Unity 2017是能够知道哪个Shader造成的,在Profiler里面可以把Shader.CreateGPUProgram继续展开,但是现在Unity2018.4.36不行。
A:Profiler的Timeline视图可以看到。
感谢黄晓文@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/61543e5f8f8c834241c27996
Shader
Q:URP项目,下面这个Shader是做什么用的?有没有相关的变体算法和优化建议,谢谢。
A:UberPost是一个大杂烩,有好多处理都集中在这里,项目确定不用的变体之后,就可以用#pragma skip_variants xxx 跳过。例如:#pragma skip_variants _TONEMAP_NEUTRAL _DITHERING。
感谢怀特@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/61518b5e8f8c834241be8d2a
20211011
更多精彩问题等你回答~
Unity增量打包AssetBundle没变化的资源也会被重新打包
https://answer.uwa4d.com/question/615538998f8c834241c3dbdd
在模型有UV2的情况下开启Generate Lightmap UVs
https://answer.uwa4d.com/question/614458df8f8c834241ac1183
如何实现AAB包的增量更新
https://answer.uwa4d.com/question/60e80c26038436106ddf44da
封面图来源于网络
今天的分享就到这里。当然,生有涯而知无涯。在漫漫的开发周期中,您看到的这些问题也许都只是冰山一角,我们早已在UWA问答网站上准备了更多的技术话题等你一起来探索和分享。欢迎热爱进步的你加入,也许你的方法恰能解别人的燃眉之急;而他山之“石”,也能攻你之“玉”。
官网:www.uwa4d.com
官方技术博客:blog.uwa4d.com
官方问答社区:answer.uwa4d.com
UWA学堂:edu.uwa4d.com
官方技术QQ群:793972859(原群已满员)
点击下方名片关注我们,将我设为星标,及时接收小编每日推送哦,性能优化不迷路~
近期精彩回顾
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
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.