我想制作一个无法使用几何模型中的SceneKit构建的形状,因此我想使用其他一些3D建模程序。我感兴趣的是,这些模型(例如在Blender中创建)可以作为可以直接在SceneKit中创建的模型。我希望能够在代码中应用材质并更改对象的颜色,并希望事先了解导入的模型是否可以实现。
我知道我可以在.dae(Collada文件)中导出模型,这样我可以肯定使用该模型,但不能更改其材料。
如果可以通过其他方式更改它,我将不胜感激,如果您可以简要解释如何从Blender导出对象(以哪种格式)。
答案 0 :(得分:0)
实际上是的,您可以更改Collada(dae)格式的材料。
材料包含在班级SCNMaterial
中。
以下是您可以用来访问资料的方法:
首先,您可能是最简单的材料访问方法:
SCNNode.geometry.firstMaterial
此方法为您提供对象正在使用的第一个材质。
接下来,您可以访问所有材料:
SCNNode.geometry.materials
此方法为您提供包含对象正在使用的所有材质的NSArray
。
然后最后你有良好的名字访问权限:
[SCNNode.geometry.materialWithName: NSString]
此方法为您提供包含对象正在使用的所有材质的NSArray
。
在苹果文档中:
什么是SCNNode.geometry
?找出here
附注:
要实际控制SCNMaterial
的颜色/图像,您需要使用SCNMaterialProperty
SCNMaterial
由多个SCNMaterialProperty
组成。
欲了解更多信息,请阅读文档