Ios 在场景工具包中创建二维图像作为SCNNode
我试图在场景工具包中基于2D jpg图像创建一个SCNNode。此图像将放置在另一个3D SCN节点中。我尝试在我的场景中使用.background.contents,但这不是我想要的。你知道我该怎么做吗?谢谢 这是我的代码:Ios 在场景工具包中创建二维图像作为SCNNode,ios,swift,scenekit,scnnode,Ios,Swift,Scenekit,Scnnode,我试图在场景工具包中基于2D jpg图像创建一个SCNNode。此图像将放置在另一个3D SCN节点中。我尝试在我的场景中使用.background.contents,但这不是我想要的。你知道我该怎么做吗?谢谢 这是我的代码: @IBOutlet weak var sceneView: ARSCNView! 在viewDidLoad方法中: let scene = SCNScene() sceneView.scene = scene 在视图中,将显示: let ship = SpaceSh
@IBOutlet weak var sceneView: ARSCNView!
在viewDidLoad方法中:
let scene = SCNScene()
sceneView.scene = scene
在视图中,将显示:
let ship = SpaceShip()
ship.loadModal()
ship.position = SCNVector3(0, 0, Double(-1.5))
sceneView.scene.rootNode.addChildNode(ship)
这是宇宙飞船:
class SpaceShip: SCNNode {
func loadModal(){
let virtualObjectScene = SCNScene(named: "ship.scn")!
let wrapperNode = SCNNode()
for child in virtualObjectScene.rootNode.childNodes{
wrapperNode.addChildNode(child)
}
self.addChildNode(wrapperNode)
}
}
你可以从检查员那里做。在任何3d对象上,只需转到材质属性,然后将漫反射属性更改为图像,就这么简单 这对我很管用
let node = SCNNode(geometry: SCNSphere(radius: 0.01))
node.geometry?.materials.first?.diffuse.contents = color
node.physicsBody? = .static()
node.name = name
node.physicsBody?.categoryBitMask = MaskNum.barrier.rawValue
node.geometry?.materials.first?.diffuse.contents = UIImage(named: "Circle")
node.position = SCNVector3(0.0, 0.0, -5.0)
sceneView.pointOfView?.addChildNode(node)
这将是一样简单,只是设置一个几何物体的材料图像。你能提供一个例子请我?谢谢如果这个问题是关于“我甚至不知道从哪里开始”,我的答案是否定的。如果只是为了帮你写几行,展示你的作品。检查我编辑的答案。我只想在船的顶部放一个2D图像…我似乎找不到材料属性,你怎么做?sry im是ARIn iOS 11.2的新手。此解决方案存在图像渲染问题(imge仅显示为黑色和红色),您是否遇到过类似的问题?