如何将光泽效果应用于3D模型?

问题描述 投票:0回答:1

我想在3D模型上应用光泽效果,我正在使用SceneKit加载3D模型。我已经应用了metalnessroughness属性,但是它看起来像下面的屏幕快照,并且metalnessroughness在旋转时未更新:

model.capsuleModel.geometry?.firstMaterial?.lightingModel = .physicallyBased
model.capsuleModel.geometry?.firstMaterial?.metalness.intensity = 0.5
model.capsuleModel.geometry?.firstMaterial?.roughness.intensity = 0.5

Applied metalness<code>and</code>roughness

I want something like this

swift scenekit metalkit
1个回答
0
投票

可以使用以下代码添加光泽效果:

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]
© www.soinside.com 2019 - 2024. All rights reserved.