我正在使用Scene Kit,创建了一个SCNBox。 在盒子的正面,如果点击正面左侧,则要发生“A”事件,如果点击正面右侧,则要发生“B”事件。 我该如何实现这一点?我在Stack Overflow上查看了相关答案,但大多数答案只涵盖了节点被触摸的情况,而不是节点的部分。
我正在使用Scene Kit,创建了一个SCNBox。 在盒子的正面,如果点击正面左侧,则要发生“A”事件,如果点击正面右侧,则要发生“B”事件。 我该如何实现这一点?我在Stack Overflow上查看了相关答案,但大多数答案只涵盖了节点被触摸的情况,而不是节点的部分。
SCNHitTestResult
有一个geometryIndex
属性,可以给出被点击的几何元素(即立方体面)的索引。它还有一个faceIndex
属性,可以给出该元素中原始图形的索引。
SCNBox
使用 localNormal
值也是有效的吗? - CrashalotSCNGeometryElement
由多个基元(三角形、四边形等)组成,而 faceIndex
则为您提供了被击中的基元的索引(范围在 [0, primitiveCount-1]
内)。 - mnuages