如何优化微信小游戏在iOS机器上Shader变体预热特别慢的问题

1)如何优化微信小游戏在iOS机器上Shader变体预热特别慢的问题

2)小游戏进程的包内存不足问题

3)微信小程序并发下载请求的具体限制

4)对于Wwise有什么优化经验


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

UWA社区主页:community.uwa4d.com

UWA QQ群:793972859

Platform

Q1:请问微信小游戏在iOS机器上Shader变体预热特别慢,这个有什么优化方向吗?以我们项目来说,安卓用时1秒多,iOS稳定10秒。

A:团结引擎里面有异步的Warmup操作,Unity引擎里面没有这个功能,可能需要考虑进一步减少Shader变体数量,或者分批次Warmup。

可参考:
github.com/wechat-mini...

docs.unity.cn/cn/tuanjiem...

Q2:已经试过了,把团结引擎升级到了最新,然后联系微信的人开通了测试权限,现在流程是跑通了,但是测试下来结果并不理想。虽然现在是异步了,但是会影响主线程的其他东西加载,用的总时间反而比以前更久了。 开启异步时,帧率只有2,但它的作用只能是它在加载的时候,不要去干别的,这样确实不会卡住,但凡做点事情就不行了。请问还有什么其他的办法吗?

A1:建议用Unity Profiler连着看Timeline,就是连上Profiler,找到有Shader.CreateGPUProgram耗时的那一帧,切换到Timeline模式,找到Shader.CreateGPUProgram的那个耗时,鼠标放上去应该可以看到具体是哪个变体的耗时这么高。

A2:找到原因了,就是这个导致的:

感谢Faust@UWA问答社区提供了回答,欢迎大家转至社区交流:
answer.uwa4d.com/question/68...


Memory

Q1:Unity 2021.3.23f版本,用wasm分包。看的是自身小游戏的进程,用WebContent。在iOS 18.4的版本崩溃率很高,表现就是一打开就秒显示包内存不足,实际内存在Mac上的Activity Monitor看,进程一直是700~800m。有时候要连续崩溃几次就能正常进游戏。请问这是因为什么导致的呢?

A:这是iOS 18.4的Bug,要解决这个问题建议换一个设备,或者使用分包的方法,因为18.4上wasm的编译内存会比较大,所以建议分包。

感谢左君博@UWA问答社区提供了回答

Q2:请问线上版本如何确定有没有用到wasm分包,通过后台或者日志能看到吗?

A:你扫码启动游戏,打开vConsole就能看到。

感谢ruidawang@UWA问答社区提供了回答,欢迎大家转至社区交流:
answer.uwa4d.com/question/68...


Platform

Q:请问微信小程序目前的版本最多支持多少个并发下载请求?

A:具体限制看这里:
developers.weixin.qq.com/minigame/de...

感谢袁梓民@UWA问答社区提供了回答,欢迎大家转至社区交流:
answer.uwa4d.com/question/68...


Memory

Q:请问大家对于Wwise有什么优化经验么?或者可以推荐阅读内容么?主要想了解下其他项目是怎么使用的,比如动态管理方面。

A:关于内存方面的优化,可以参考官方文档:
《Wwise SoundBanks内存优化》
《wwise内存问题》
《关于降低内存占用的技巧 》

其中最常规和效果显著的做法是比较类似引擎原生音频的优化方法,如流式加载、控制压缩率和采样率。也还有从策略上进行优化的方案。

感谢Faust@UWA问答社区提供了回答,欢迎大家转至社区交流:
answer.uwa4d.com/question/68...

封面图来源于网络


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

UWA官网:www.uwa4d.com

UWA社区:community.uwa4d.com

UWA学堂:edu.uwa4d.com

官方技术QQ群:793972859

相关推荐
轩1152 小时前
实现仿中国婚博会微信小程序
微信小程序·小程序
凌佚3 小时前
rknn优化教程(一)
c++·目标检测·性能优化
橘子青衫3 小时前
Java并发编程利器:CyclicBarrier与CountDownLatch解析
java·后端·性能优化
知否技术6 小时前
2025微信小程序开发实战教程(一)
前端·微信小程序
喝牛奶的小蜜蜂8 小时前
个人小程序:不懂后台,如何做数据交互
前端·微信小程序·小程序·云开发
2501_918941059 小时前
旅游微信小程序制作指南
微信小程序·小程序·旅游
聪颖不聪颖10 小时前
使用 Time Profiler 查看关键函数调用耗时情况,从而分析和解决问题
性能优化
邹荣乐10 小时前
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合
前端·微信小程序·uni-app
DemonAvenger10 小时前
Go并发编程:内存同步与竞态处理
性能优化·架构·go
半兽先生14 小时前
uniapp微信小程序视频实时流+pc端预览方案
微信小程序·uni-app·音视频