正如Apple 论坛上的这个帖子所提到的,iOS 10 上的灯光现在变弱了,并且改变了场景的外观。
该线程建议设置SCNDisableLinearSpaceRendering
为“是”,但这不起作用。换句话说,使用SCNDisableLinearSpaceRendering
不会使您的场景在 iOS 10 上看起来与在 iOS 9 上相同——至少在我们的测试中不会。
我们也试过:
floorNode.geometry?.firstMaterial?.lightingModel = SCNMaterial.LightingModel.blinn
下面的屏幕截图显示了同一场景之间的差异。请注意,即使照明相同,地板也是如何从绿色变为黄色的。
场景包含一种定向光和一种环境光。
重现场景的文件:https ://www.dropbox.com/sh/cg5f7hyf1oonxfu/AAAJef7LhpSxuJyUSjqfGbmca?dl=0 。
即使它确实有效,设置SCNDisableLinearSpaceRendering
为 YES 似乎也会禁用 PBR。
我们的应用程序允许用户自定义定向光的颜色。目标是在利用 PBR 的同时,在 iOS 10 场景中重现来自 iOS 9 场景的相同自定义光照。
1) 我们如何确保 iOS 10 场景看起来与 iOS 8/9 场景相同?
2) 如何在受益于 PBR 的同时实现 #1?
iOS 8/9(在模拟器上运行):
iOS 10(在用户设备上运行):