如何使用SceneKit和Swift更改blender中创建的形状的颜色?
我有一些形状是用blender创建的,我怎样才能动态地改变它们的颜色。我从另一个问题尝试了这个方法,但没有成功:如何使用SceneKit和Swift更改blender中创建的形状的颜色?,swift,scenekit,blender,Swift,Scenekit,Blender,我有一些形状是用blender创建的,我怎样才能动态地改变它们的颜色。我从另一个问题尝试了这个方法,但没有成功: newNode.geometry?.firstMaterial?.diffuse.contents = UIColor(red: 0.3, green: 0.5, blue: 0.4, alpha: 1 ) 在这种情况下,newNode是一个子节点: newNode=newNodeScene.rootNode.childNode(withName:"test3 refer
newNode.geometry?.firstMaterial?.diffuse.contents = UIColor(red: 0.3, green: 0.5, blue: 0.4, alpha: 1 )
在这种情况下,newNode是一个子节点:
newNode=newNodeScene.rootNode.childNode(withName:"test3 reference", recursively:true)
我怎样才能改变它?也许它需要一个覆盖,如果是这样,如何覆盖?感谢您的时间我刚刚尝试了“基本场景”->在Blender中创建了一个带有颜色的框,导出为.dae,导入到SCNASSET中,并将其转换为场景,然后用此代码开始。它只是工作。但这只是一个简单的测试…也许你添加了纹理或其他东西,所以如果你给我们提供更多细节,这将是一个好主意
let scene2 = SCNScene(named: "art.scnassets/coloredbox.scn")!
scnView.scene = scene2
if let box = scene2.rootNode.childNode(withName: "Cube", recursively: true) {
box.geometry?.firstMaterial?.diffuse.contents = UIColor.yellow
}
}
我发现了这个问题,不过还是要谢谢你。我必须用根来做