2017-10-13 32 views
1

我正在尝试构建我的第一个ARKit应用程序。该应用程序的目的是在相机朝向的方向上拍摄小块。现在,这是我的代码。如何更新ARKit中的pointOfView

sceneView.scene.physicsWorld.gravity = SCNVector3(x: 0, y: 0, z: -9.8) 


@IBAction func tapScreen() { 
    if let camera = self.sceneView.pointOfView { 
     let sphere = NodeGenerator.generateCubeInFrontOf(node: camera, physics: true) 
     self.sceneView.scene.rootNode.addChildNode(sphere) 
     var isSphereAdded = true 
     print("Added box to scene") 

    } 


} 

重力工作正常,每当我点击屏幕时,每次我点击屏幕时,块都会拍摄出来。但是,无论相机朝向哪个方向,它们都会拍到相同的位置。我试图了解pointOfView是如何工作的,我是否需要重新渲染整个场景?还有什么我不能想到的?谢谢你的帮助!

回答

1

改变这一行从

self.sceneView.scene.rootNode.addChildNode(sphere) 

self.sceneView.pointOfView?.addChildNode(sphere)