如何将 3D 对象附加到我的手机上,以便我可以四处移动,然后单击屏幕后 - 3D 对象应保持在 3D 空间中的当前位置?
问问题
187 次
1 回答
0
原生 RealityKit 方法
stick-and-drop
@Rumata,这是您的代码在方法论方面的样子。应用启动后 5 秒内会自动掉落一个球体对象。实现 Tap Gesture 的方式相同(通过 Storyboard 或以编程方式,由您决定)。
import ARKit
import RealityKit
class ViewController: UIViewController {
@IBOutlet var arView: ARView!
override func viewDidLoad() {
super.viewDidLoad()
let mesh = MeshResource.generateSphere(radius: 0.1)
let sphere = ModelEntity(mesh: mesh)
sphere.transform.translation = [0, 0,-1]
let anchor = AnchorEntity(.camera)
sphere.setParent(anchor)
arView.scene.addAnchor(anchor)
DispatchQueue.main.asyncAfter(deadline: .now() + 5.0) {
let frame = self.arView.session.currentFrame
let envAnchor = AnchorEntity(world: (frame?.camera.transform)!)
sphere.removeFromParent()
envAnchor.addChild(sphere)
self.arView.scene.addAnchor(envAnchor)
}
}
}
于 2020-11-19T22:07:10.413 回答