最近参与的一个旧项目由5.5升级到了2020,遇到了一些问题,主要是特效的,稍微记录一下。
一、材质球丢失问题
这个很经典,就不讲了,找美术重新拖一下就行。
二、场景变暗了
这个查了下网上说是因为unity渲染大改了,在不同版本渲染会有差异,然后找美术重新渲染一个有问题的试了下,确实没问题了,所以找美术重新渲染就可以了。
三、特效变形问题
版本升级后有一部分特效变形了,在编辑器模式可以看到是特效的缩放出问题了,修复也没什么,让美术重新调一下就行,主要是花时间查为什么在5.5没问题,在2020有问题,在网上一顿查找没找到原因,后来把出问题的特效列了一下,发现出问题的特效原本的缩放都不是1,也就是说缩放不是1的特效升级到2020后会变形,估计原因也是unity底层渲染改了,里面的一些计算放式变了导致的,另外还有个小坑,升级后原先的UI裁剪失效了,原因是unity自带的shader命名变了,导致挂载了裁剪脚本的特效无法根据名字替换。
四、华为手机特效问题
写这篇东西主要就是为了记录这个问题,新打的包在华为手机跑的时候流光特效会有显示问题,主要表现为流光为锯齿状,而且时间越久特效看上去越离谱,首先反应就是精度有问题,一上网查果然如此。然后马上按文章说的通关宏增加精度和把纹理声明为高精度纹理:

#pragma fragmentoption ARB_precision_hint_nicest
sampler2D_float _CameraDepthTexture;

打包重新看,发现没效果,心想不会吧,阿sir,我看到好几篇文章里有人用这个方法解决问题了,没想到到我这不行,继续查,接着把原先声明为half精度的一些变量改为float,再试,还是不行,这下有点懵逼了,网友们的增加精度方式都试过了都不行,难道不是精度问题?后来一位群友告诉我可能是time的问题,说time越来越大会导致精度丢失,我查了下,time的问题也比较经典,时间越长特效越慢,不过我这个好像也有可能,因为时间久了那些特效显示会越来越离谱,先试试再说,改完后再看,还是没效果,更懵逼了,毫无头绪,没办法,准备下载renderdoc抓帧debug看看了。
第二天忘了因为什么原因,有个同事说打包要改的shader在xx文件夹,我他妈直接晕了,没人跟我说过,因为项目的资源是从UIproject软链过去的,所以我一直在UIproject里改。难怪没效果,这下好了,赶紧跑去那个目录改一下,这下还不搞定?然后一顿操作,打包,最后还不行。
那就只能下renderdoc来看了,在网上找了些教程学习怎么使用renderdoc后我就开始了,手机运行游戏抓帧后我发现没法像在电脑里一样单步debug,只能看数据,通过看fragshader发现数据没什么异常
然后再看meshview,发现texcoord0看上去有点奇怪,莫非是这个原因?

所以我又找了一台正常的手机抓帧来看,发现正常的手机也会有这种数据,只是看上去好像没那么多,然后再继续对比,发现华为手机的glposition好像变化比较大,然后看了下shader代码position是fix精度的,难道这个也有影响吗?之前看的文章说华为手机不能用half,所以一直没改这个。因为frag的数据看上去没什么异常,mesh的数据只有这点差异比较大,那只能改下这个试试了。最后这个修改是对的,打包后就可以了。
事情还没完,打包后原先大部分有问题的特效都可以了,但挂了这个特效的模型会闪,去看了下,是因为会闪的特效混合了这个流光shader和其他shader,其他shader原先的精度也有问题,让测试弄了个超级号给我,把混合了的其他特效全部改了一下,至此特效问题就全部解决了。
因为之前的项目是自研引擎,这种问题一般有引擎部的人去看,我已经很久没研究这类问题了,所以解决了这种问题还挺开心的,顺手也算会用renderdoc debug了,之前也用过GPA抓过其他游戏,但那时不会看信息,现在的游戏特效这么炫,好像不会抓帧会显得自己不够高级。
最后,希望对遇到问题的人有帮助吧。
参考

记一个Adreno平台下GPU精度造成的问题
结合Bug,聊一下用RenderDoc进行安卓手机联调(二)
华为手机关于LOAD_TEXTURE2D的Bug
unity shader - GPU 不支持过高的精度运算导致 黑色噪点
关于Mali GPU的浮点数异常
华为手机Shader出错水面呈条纹状解决方案(深水坑)
渲染逆向工程:打造一台调试任意Android游戏的设备
renderdoc调试总结
记unity3d下shadowmap实现影子的路程

unity升级版本后华为手机特效问题相关推荐

  1. Unity 升级版本后Shader导致崩溃

    Unity项目从2017.4.11升级到了Unity 2019.4.5,然后将美术资源素材也在新版本中重新进行了打包,然后在Unity运行时出现了崩溃. 经过了排查和定位后发现是人物模型进行缩放导致 ...

  2. OneNote重装或升级版本后如何同步之前的在线笔记?

    OneNote重装或升级版本后如何同步之前的在线笔记? ⚙️1.软件环境⚙️

  3. 华为哪些手机最先升级鸿蒙,哪些旧型号能升级鸿蒙系统 华为手机最低Mate 9系列起跳...

    在万众期待的目光当中,华为正式发布鸿蒙手机操作系统.那么接了下来网友以及华为手机用户最关心的问题就是:那些旧型号华为手机才能适配到鸿蒙系统呢?目前根据已知的情况来看,最低早在2016年发布的华为Mat ...

  4. 华为宣布鸿蒙升级,华为宣布鸿蒙系统升级至2.0版本 明年华为手机全面支持

    昨天,华为开发者大会开幕.华为消费者业务CEO余承东做了主题演讲.余承东表示,今年12月份将面向开发者提供鸿蒙2.0的beta版本,这意味着明年华为智能手机将全面升级支持鸿蒙2.0. 鸿蒙2.0带来了 ...

  5. 安卓升级鸿蒙可行性,华为手机都可以升级鸿蒙系统么?_科技数码通

    首先,从可行性方面分析. 我们都知道,现在的华为手机使用的都是安卓的系统,在华为和谷歌的合作协议中,有明确的表示,使用了安卓系统的华为手机,必须使用安卓系统.也就是说,在海外市场,目前已经使用了谷歌服 ...

  6. nove6怎么升级鸿蒙系统,华为手机怎么升级鸿蒙,华为鸿蒙系统支持手机型号大全...

    2020年9月10日,华为鸿bai蒙系统升级至华为鸿蒙系统2.0版本,即HarmonyOS 2.0 .余承东表示,2020年12月份将面向开发者提供鸿蒙2.0的beta版本.鸿蒙系统的全面开源也将在2 ...

  7. 华为手机卡在升级界面_华为手机停在开机界面,进入不了主界面,该怎么办?...

    在关机状态下,同时按住手机的开机键加音量键,10秒钟以上时间(部分机型开机键+音量键上键或下键+手机屏幕上的home主页键或返回退出键,10秒). 手机出现开机画面并机身振动,进入到recovery工 ...

  8. 网易新闻鸿蒙系统,华为宣布鸿蒙系统升级至2.0版本 明年华为手机全面支持

    9月10日消息,今天,华为开发者大会2020在东莞松山湖开幕.华为消费者业务CEO余承东做了主题演讲.余承东表示,今年12月份将面向开发者提供鸿蒙2.0的beta版本,这意味着明年华为智能手机将全面升 ...

  9. 所有小米手机都能升鸿蒙ne,华为哪些手机可以升级到鸿蒙 华为手机如何升级鸿蒙...

    华为是近几年比较热门的品牌,尤其在2019年的贸易事件中,华为更是展现了其实力,直接发布了鸿蒙系统.它是一款独立于安卓.苹果之外的系统,许多人都对它充满的好奇.下面就和小编一起来看看华为哪些手机可以升 ...

最新文章

  1. HBase in 2013
  2. 【软考】信息系统项目管理师--知识点
  3. ICLR 2020 | “同步平均教学”框架为无监督学习提供更鲁棒的伪标签
  4. pycharm运行python程序后显示_pycharm运行和调试不显示结果的解决方法
  5. selenium 实现循环点击_webdriver处理循环点击
  6. 解决 Mac OS 下罗技鼠标滚轮无法使用问题(滚动失效)
  7. python 爬虫 微博 github_GitHub - berluo/weiboSpider-1: 新浪微博爬虫,用python爬取新浪微博数据...
  8. 计算机基础 键盘认识,电脑入门(八)、认识键盘及操作
  9. 基于Python实现的基金交易系统
  10. Unity出IOS包报错记 -1
  11. 键盘定位板图纸_防火卷帘轨道安装强制定位
  12. Maven:解决IDEA无法下载源码
  13. OpenMP编程(4)—sections、single指令
  14. Windows远程映射端口,访问服务器生成的tensorboard本地访问链接地址
  15. 淘宝经典差评中评好评和回复
  16. leetCode_Patching Array
  17. 三防手持平板电脑在工业的发展趋势
  18. Threads and Locks
  19. kali查看进程PS
  20. mysql5.7 pxc方案_mysql5.7 pxc

热门文章

  1. 微信小程序文字逐个显示效果
  2. ansys 内聚力模型_基于内聚力模型(CZM)的单筋拉拔数值分析方法研究
  3. 美国CAFC做出对于手机下拉菜单的可专利性决定、苹果成功无效部份权项
  4. 鲁棒与最优控制 周克敏 高清中文版pdf
  5. python调用excel宏_用Python如何开发Excel宏脚本?新手必学
  6. 【正点原子Linux连载】第十七章 输入设备应用编程-摘自【正点原子】I.MX6U嵌入式Linux C应用编程指南V1.1
  7. 仿抖音 火山视频滑动播放
  8. PointNet系列论文解读
  9. 条码软件如何批量制作A级EAN 13条码
  10. 一个非英语专业的人的自述:我如何用一年时间考上欧盟口译司一个非英语专业的人的自述:我如何用一年时间考上欧盟口译司...