【问题标题】:How to apply Glossy effect to 3D Model?如何将光泽效果应用于 3D 模型?
【发布时间】:2020-09-03 23:54:50
【问题描述】:
我想在 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
I want something like this
【问题讨论】:
标签:
swift
scenekit
metalkit
【解决方案1】:
可以使用以下代码添加光泽效果:
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]