我正在使用SceneKit的场景视图的autoenablesDefaultLighting
和allowsCameraControl
函数为应用程序中的obj 3D模型提供光线,并在Objective-C中围绕该对象旋转。自从升级到iOS12以来,autoenablesDefaultLighting
的默认光强度变得更高,3D模型看起来如此明亮!
有人遇到同样的问题吗?如果是,当autoenablesDefaultLighting
的值为"是"时,有没有办法控制其光强度?如果不可编辑,我尝试通过创建一个节点将全向光或定向光附加/约束到摄像机,为该节点分配一个光并添加为SCNView.pointOfView
的子光,但没有光照亮场景。
示例:
iOS 12 之前显示的 3D 对象 iOS 12
中显示的 3D 对象
如果有人能帮助我,那就太好了。
非常感谢!
编辑以解决此问题
我创建了一个新的SCNCamera并将其添加到节点中,并设置了我的scnView的PointOfView。 使用scnView.pointOfView.wantHDR = YES;
激活此相机的HDR 但A的背景是灰色的。
为了删除灰色背景,我删除了带有scnView.backgroundColor = [UIColor ClearColor]
的背景颜色 并将相机的爆炸设置为-1,并带有:
self.scnView.pointOfView.camera.minimumExposure = -1;
self.scnView.pointOfView.camera.maximumExposure = -1;
谢谢
您可以尝试启用 HDR。它应该导致平衡的曝光
scnView?.pointOfView?.camera?.wantsHDR = true
启用 HDR 后,您甚至可以通过以下方式控制曝光补偿
scnView?.pointOfView?.camera?.exposureOffset
.camera?.想要HDR = 真
。照相机?。想要曝光适应 = 假
应该解决问题!