Unity 2018发布在iOS 16.3偶尔出现画面不动的问题

这篇具有很好参考价值的文章主要介绍了Unity 2018发布在iOS 16.3偶尔出现画面不动的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1)Unity 2018发布在iOS 16.3偶尔出现画面不动的问题
2)IL2CPP在Xcode下增量编译问题
3)帧同步实现PuppetMaster布娃娃系统的问题


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

Platform

Q:Unity 2018发布在iOS 16.3偶尔出现画面不动的问题。

项目持续时间很长了,还是用的2018版本。随着新iOS系统推出,这种反馈也越来越多,大部分都是出现在iOS 16.3.x。

具体表现是:画面完全不动,也不接收任何输入事件,像是渲染停了,但是逻辑还是正常,还在播放声音,刷怪之类的。

手上的iOS设备重现不了,也就没法调试。不知道是哪一块可能有问题,希望有遇到过的朋友分享经验,不胜感激。

A:之前在社区上也看到过跟上面这个情况是一样的问答,因为只有外网玩家反馈,公司的设备都不能重现,所以也不好定位。

要是能知道是Shader报错,那还能调试,参考这个:
解决IOS GPU报错导致游戏卡死IOAF code 4 - 知乎

感谢zlfeng@UWA问答社区提供了回答


Build

Q:最近在研究加速打包问题,发现IL2CPP生成代码之后每次Xcode都是全量编译(直接build而不是clean+archive)。

我参考了以下信息:
Incremental builds for IL2CPP - Unity Forum

对比了下如果C#代码没有变化,生成的CPP代码的内容确实不变。但是重新生成貌似会导致文件修改时间变化或别的属性变化,Xcode依然是所有都编译了一遍。

这块有什么经验吗?

A1:我之前的做法是细化打包策略,资源打包细分为差不多10个步骤:对UI、特效、Lua(分三块:Core、模块和LuaTable配置),C#层Config、角色、场景、编译工程、资源覆盖、快速编译、生成APK/IPA和云真机测试等,组织成不同的打包命令提供给CI。

如果是C#代码没变化,可以只做资源类的打包,对需要重新(此处可增量)打包的AssetBundle、Lua、Config等打包,打包后直接覆盖到Xcode工程,直接生成IPA包,跳过中间环节。

构建过程可以细化到很细,如果你是Lua侧,那估计只需要打包Lua模块相关,1分钟内就可以出到IPA包。

如果是Xcode代码也发生变化,这个可以结合Ccache进行提速。

资源打包可以做分布式打包,多台黑苹果去打包各个模块的资源。再传递到版本机上整合,这个过程也可以Hook Svn/Git的资源提交,在提交后做一次打包,再次发布的时候可以增量处理。

其实可以脱离AssetBundle,把量产资源采用非AssetBundle的方式进行组织。避开不必要的导入导出及打包。

感谢debugger@UWA问答社区提供了回答

A2:2年多前,刚好处理过这个问题,当时用的Ccache来缓存Xcode编译的中间产物,在打包后处理修改预处理文件Classes/Preprocessor.h的修改时间,在加速效果上是明显的,缩短了一半多的时间。

感谢海桐@UWA问答社区提供了回答


Physics

Q:项目中用PuppetMaster插件做布娃娃效果,模拟障碍击打等等各种效果。目前服务器是基于状态同步实现,但同步量太大,考虑修改为帧同步的方式,但是PuppetMaster中大量使用了刚体组件、Joint组件去模拟各种效果。帧同步中刚体这块有什么办法实现吗?

A:如果是做帧同步,表现层和逻辑层一定要做分离。简单看了一下PuppetMaste这个插件,不太确定但是大概率是基于PhysX实现的,我们自己测试PhysX在相通平台(iOS或者Android)经过一些处理是基本可以保证一致性的,但是iOS和Android上我们测试出过非常明确的不一致现象,所以如果要做移动端跨平台的游戏,帧同步所管理的逻辑层最好不要使用PhysX物理引擎,否则无法保证最终的一致性。

当然,这里还要看题主的游戏类型,如果比较简单,而且每局很短时间,也许不一致的结果可控,可以尝试一下。整体上不推荐把这个插件做到帧同步的逻辑内,成本比较高。

感谢贾伟昊@UWA问答社区提供了回答

封面图来源于网络


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

UWA官网:www.uwa4d.com
UWA社区:community.uwa4d.com

 文章来源地址https://www.toymoban.com/news/detail-695823.html

到了这里,关于Unity 2018发布在iOS 16.3偶尔出现画面不动的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 16.3:岛屿数量问题2

    https://leetcode.cn/problems/number-of-islands-ii/ 给你一个大小为 m x n 的二进制网格 grid 。网格表示一个地图,其中, 0 表示水, 1 表示陆地。最初, grid 中的所有单元格都是水单元格(即,所有单元格都是 0 )。 可以通过执行 addLand 操作,将某个位置的水转换成陆地。给你一个数组

    2024年02月07日
    浏览(35)
  • 苹果发布iOS16正式版,各机型升级建议

    今日凌晨,苹果发布了 iOS16 和 iPadOS16 正式版系统,打开系统设置-通用-软件更新就可以收到推送 iOS16正式版的版本号为  20A362 ,更新包大小在5GB左右,这个版本也是  iPhone14 系列的出厂标配版本 ,不少果粉会特别青睐。 iOS16 正式版包含了此前9个测试版的所有26个新功能,

    2024年02月04日
    浏览(66)
  • 文心一言 VS 讯飞星火 VS chatgpt (225)-- 算法导论16.3 7题

    推广赫夫曼算法以生成三进制码字需要对算法进行一定的修改,确保在每一步选择频率最低的三个节点进行合并,并生成对应的三进制码。以下是推广赫夫曼算法的Go语言实现,并附带证明其能生成最优三进制码的思路。 首先,我们需要定义赫夫曼树节点的数据结构,并实现

    2024年04月26日
    浏览(47)
  • 苹果iOS 16.6 RC发布:或为iPhone X/8系列养老版本

    今天苹果向iPhone用户推送了iOS 16.6 RC更新(内部版本号:20G75),这是时隔两个月的首次更新。 按照惯例RC版基本不会有什么问题,会在最近一段时间内直接变成正式版,向所有用户推送。 需要注意的是,鉴于iOS 17正式版即将到来,后续iOS 16大概率不会带来任何新功能的更新,只

    2024年02月16日
    浏览(44)
  • Unity iOS打包发布流程

    一、版本说明 Unity 2020.3.33f MacOS Monterey 12.3.1 XCode 13.4.1 二、开发者账号 苹果开发者平台 https://developer.apple.com/ 类型 用途 限制 费用 个人开发者账号 用于个人开发者进行开发和向AppStore上传应用 只能有一个开发者,调试设备受限 $99 公司开发者账号 用于公司或团队进行开发和

    2024年01月16日
    浏览(41)
  • 移动应用安全合规动态:网信办发布2大重磅文件!《儿童智能手表个人信息和权益保护指南》发布;iOS出现0 day漏洞(第2期)

    一、监管部门动向: 网信办发布《网络安全事件报告管理办法(征求意见稿)》、《粤港澳大湾区(内地、香港)个人信息跨境流动标准合同实施指引》;《 儿童智能手表个人信息和权益保护指南》爱加密深度参编! 二、安全新闻: 苹果\\\'Lockdown Mode\\\'的破解之法被发现;中国

    2024年02月03日
    浏览(112)
  • Android RecyclerView实现选中Item变色的最精简高效实现(绝不会出现点击时其它item偶尔也被选中现象)

    效果:  核心代码如下: 代码超精简,试一下您就知道了。跟网上其它的教程不同,绝不会出现点击时其它item偶尔也被同步选中改变颜色导致乱串的现象

    2024年02月11日
    浏览(39)
  • H5页面在ios的浏览器上使用 高德地图 报当前定位失败Geolocation permission denied 或者 偶尔报AMap没有找到的

       可以去高德api查看:常见问题 | 高德地图API (amap.com)   图中红圈2,3,4,5,6对应Geolocation permission denied报错的原因,可对应修改。 如红圈2:用户打开定位选项即可:   1.在index.html文件中; 2.在封装高德api的文件下对应调整:  

    2024年02月12日
    浏览(50)
  • Unity之c#专题篇——【不动如山核心章】

    👨‍💻个人主页 :@元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏 : unity之c#专题篇 ⭐[【Unityc#专题篇】之c#进阶篇】 ⭐【Unityc#专题篇】之c#核心篇】 ⭐【Unityc#专题篇】之c#基础篇】 ⭐【Unity-c#专题篇】之

    2023年04月23日
    浏览(34)
  • Unity3d 物体不动,碰撞触发不了的情况

    问题: 有一种情况,主角带刚体,主角站着不动。玩家站在陷阱上,陷阱的碰撞体 Toggle 之后, OnCollisionEnter 触发不了。 解决:盲猜玩家组件上才有刚体,而碰撞检测是刚体运动的时候,才进行检测的。

    2024年02月06日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包