在SceneKit中点击/选择节点(Swift)

10

我对SceneKit和iOS中的3D空间是新手。我目前正在制作一个简单的游戏,展示了一个由28个小分段组成的立方体(如果您愿意,可以称其为“迷你立方体”)。

我想通过点击它们来移动这些小立方体,但是我无法理解如何选择特定节点(大立方体的子节点)。

有谁能帮帮我或者发布一个面向初学者的SceneKit教程链接吗?我已经寻找了数天,但没有找到我需要的内容。

干杯


你能移动小立方体吗?我也试图使用手指在3D场景中移动一件家具。我该如何实现?这件家具是客厅3D模型中的一个节点。 - madLokesh
1个回答

19
你可以在场景视图中进行命中测试(例如从轻击手势识别器的位置),这将为您提供命中测试结果列表。从每个结果中,您可以获取节点(和其他信息)。
let location: CGPoint = // for example from a tap gesture recognizer
let hits = self.sceneView.hitTest(location, options: nil)
if let tappedNode = hits?.first?.node {
    // do something with the tapped node ...
}

1
谢谢David。那正是我一直在寻找的缺失之处 :) - Sebastian

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接