iPhone 6及以前型号,unity部分相机无法渲染的问题

Posted lengyeyanning

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iPhone 6及以前型号,unity部分相机无法渲染的问题相关的知识,希望对你有一定的参考价值。

最近遇到一个很尴尬的问题,iPhone 6,iPhone 5s及iPad Air 2这些设备里(其他设备没有= =),unity生成的ipa中,有些相机没有被渲染。

其实网上找了一圈基本上很多人也遇到这个问题了,应该是6以后有了重大的渲染API的更新,导致6及6以前的设备不支持。

我这边使用了UGUI,UI显示的方案是Screen Space - Camera,UI相机为投影相机,Clear Flags:Depth Only。

在主城中,只有一个UI相机和一个3D相机拍摄主城和3D角色的时候是完全正常的。

但是角色界面中,UI相机正常,一个拍摄背景的正交相机,Clear Flags: Depth ony和拍摄角色的相机没有被正确渲染。

经过无数次尝试和打包之后,发现第一行提到的那几个设备不支持Metal,所以把Auto Graphics API去掉,然后把Metal去掉,换成OpenGLES3,这个玩意不支持Color Space的Linear,所以要把Color Space换成Gamma,但是这会导致一些新的渲染方式不能被使用,所以要跟技术美术沟通好,某些计算需要他们自己在Shader中进行。

具体设置File -> Build Settings -> Player Settings ->Other Settings ->不选 Auto Graphics API, Graphics APIs 只选OpenGLES3(iPhone 5应该选2吧,貌似不支持3),Color Space* 选Gamma

剩下的请交给技术美术

这个问题老外有好多遇到的,但是好像没有搜到中文的解决方案吧,没准以后能看到不是么

p.s. Linear 必须用Metal,如果不用会屏幕全黑啥也看不到。iPhone 6s及以上设备可以直接使用Metal + Linear

       上面说的不渲染就是毛都没有一条,也不会黑屏,会渲染出来一些莫名其妙的残留。

       以上设备的ios最低版本也是9.2,所以以下的操作系统版本没有测试过。Unity 版本2017.2

以上是关于iPhone 6及以前型号,unity部分相机无法渲染的问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Unity / C# 中访问 Cinemachine 的相机距离值?

unity细节基于unity子对象(如相机)为什么无法进行z轴的拖拽移动和z轴自动归位的问题

鉴别日版iPhone如何通过IMEI查询运营商

Unity 之 代码获取IOS设备型号 -- 做分辨率适配

Unity俯视角相机地面视野范围的计算

苹果手机型号对应表