我想在3D模型上应用光泽效果,我正在使用SceneKit加载3D模型。我已经应用了metalness
和roughness
属性,但是它看起来像下面的屏幕快照,并且metalness
和roughness
在旋转时未更新:
model.capsuleModel.geometry?.firstMaterial?.lightingModel = .physicallyBased
model.capsuleModel.geometry?.firstMaterial?.metalness.intensity = 0.5
model.capsuleModel.geometry?.firstMaterial?.roughness.intensity = 0.5
可以使用以下代码添加光泽效果:
let material = SCNMaterial()
material.locksAmbientWithDiffuse = true
material.lightingModel = .phong
material.diffuse.contents = UIColor.darkGray
material.specular.contents = UIColor.white
material.shininess = 0.1
sceneView.scene?.rootNode.childNodes.first?.geometry?.materials = [material]