【发布时间】:2018-01-24 20:25:27
【问题描述】:
我正在尝试相对于我的 3d 对象的坐标放置一个 UIButton。谁能帮助我,我如何将UIButton 固定在 3d 对象上。任何帮助,将不胜感激。
【问题讨论】:
-
您必须使用函数
projectPoint和unprojectPoint。在这件事上查看my post with an answer。 -
这很快吗?无法使用项目点
我正在尝试相对于我的 3d 对象的坐标放置一个 UIButton。谁能帮助我,我如何将UIButton 固定在 3d 对象上。任何帮助,将不胜感激。
【问题讨论】:
projectPoint 和unprojectPoint。在这件事上查看my post with an answer。
在 SceneKit 中使用 UIKit 对象并不是一个好主意,因为 UIButton 使用基于 UIKit 的机制来处理用户输入和事件。
渲染 2d 对象(如按钮和手柄触摸)的最简单方法之一是使用 SpriteKit。您可以将 SCNNode 与 SCNPlane 几何体一起使用,并使用材质属性在其上渲染 SKScene。
像这样material.diffuse.contents = skScene
您可以在这个苹果示例代码中找到基于 SpriteKit 的 SceneKit 按钮:https://developer.apple.com/library/content/samplecode/scenekit-2017/Listings/Swift_Shared_UI_Button_swift.html
【讨论】:
node.position = SCNVector3(self.nodeModel.worldPosition.x, self.nodeModel.worldPosition.y, self.nodeModel.worldPosition.z - 0.01) 访问坐标但是我是试图将按钮放在特定位置。每次相机加载时,都会通过触摸将根对象添加到世界坐标中,但我无法访问子节点。