如何优化微信小游戏在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

相关推荐
大数据技术派13 小时前
等了一周,我的摸鱼小程序终于微信认证通过了
微信小程序
新*18 小时前
从一段 WebSocket 代码聊开:bytes 不是 zlib、binaryType 决定一切,15MB 大消息的零拷贝优化
javascript·python·websocket·性能优化·blob·zlib·arraybuffer
疯华整猫1 天前
把二十七个 init 从首帧前面搬走:用 Trae 把启动优化钉进 CI
android·性能优化·ai编程
CSharp精选营2 天前
记一次家庭物品管理的折腾:从“收纳”到“可检索”
微信小程序·aicoding·屋册有序·物品收纳管理·家庭收纳管理工具
数据库小学妹2 天前
MySQL大字段治理:行溢出机制、覆盖索引与拆表
数据库·mysql·性能优化
贾伟康2 天前
【共创稿事节】HarmonyOS 7.0 Progress进度体系:从接入到生产验证
性能优化·实战·harmonyos·arkts·arkui
dreams_dream2 天前
微信小程序:页面事件-上拉触底
微信小程序·小程序
疯华整猫3 天前
我用 Trae 把 Android 内存账重算了一遍
android·性能优化·源码
鹏多多3 天前
AI 到底能不能独立做个产品?我拿一个小程序验证了
前端·微信小程序·ai编程
计算机毕设定制辅导-无忧学长4 天前
《基于微信小程序的居家医疗陪护预约系统设计与实现》
java·spring boot·微信小程序·uniapp·居家医疗陪护预约系统