在iOS 11.2和11.3上运行完全相同的应用程序的新版本,在11.2上一切正常,但在11.3上,似乎没有任何材料被呈现到ARKit face节点上,后者使用SCNMorpher和blendshape值来更新。
我会更深入地研究这个问题,如果我能找到的话,我会报告一个修复方案,但我想我会在这里放一个信标,看看是否还有其他人有类似的问题,如果有,他们是否找到了任何解决方案,或者是否有人有任何一般性的想法。
据我理解,小版本的颠簸应该完全向后兼容。对吗?
谢谢
更新1:这似乎同时影响了ARKit和SceneKit场景。
更新2:这似乎与这两种材料和11.3中照明处理方式不同有关。改变照明将使更远,达到类似的效果11.2。这就好像基本单位的距离已经从米到英寸或什么的。令人困惑的是,改变照明距离似乎只会影响现在运行11.3的设备,而不是11.2。现在的问题是渲染是完全不透明的。进一步的隔离显示,在11.2,镜面呈现正常,但当镜面设置在11.3,无论是作为一个UIImage或UIColor,它根本没有任何影响。我将尝试将镜片设置为其他东西,如CALayer和CGImage,并查看这些工作中是否有一项工作,尽管所有这些工作都声称支持在文件里。


发布于 2018-03-31 02:11:41
iOS 11.3似乎改变了默认的lightingModel,这是所有问题的根源。
简单地将材料显式地设置到以前隐含的方式就可以解决所有的痛苦。
例如,
baseNode.geometry?.materials[0].lightingModel = .blinnhttps://stackoverflow.com/questions/49580257
复制相似问题