将纹理材质应用于SceneKit中的自定义对象

时间:2016-11-06 19:59:22

标签: ios swift opengl-es scenekit texture-mapping

SceneKit初学者在这里做一个iOS项目。

我一直在围绕SCN几何体(球体,到目前为止)包裹纹理,如下所示:

let scene = SCNScene()
var planet : SCNGeometry
planet = SCNSphere(radius: 1.0)
let material = SCNMaterial()
material.diffuse.contents = UIImage(named: "texture.jpg")
planet.materials = [material]
let planetNode = SCNNode(geometry: planet)
scene.rootNode.addChildNode(planetNode)

这似乎工作得很好。我的纹理无论如何都适用于球体。

但是,当我尝试加载自定义obj文件时,当我从obj加载几何体时,纹理材质似乎拒绝映射到它上面:

let scene = SCNScene()
var planet : SCNGeometry
let tempScene = SCNScene(named: "model.obj")
planet = tempScene!.rootNode.childNodes[0].geometry!
let material = SCNMaterial()
material.diffuse.contents = UIImage(named: "texture.jpg")
planet.materials = [material]
let planetNode = SCNNode(geometry: planet)
scene.rootNode.addChildNode(planetNode)

然而,模型对象看起来很好,尽管没有纹理 有什么指针吗?

0 个答案:

没有答案