对象在ARKit中的场景中不断传递

时间:2017-11-04 04:38:12

标签: ios swift scenekit ios11 arkit

我正在尝试使用适用于iOS 11的ARKit进行轻松的折腾游戏,并且我有一个场景可以保留三个节点(灯光,地板,它的物理体型是静态的,垃圾桶还是......把扔过的球放在里面)

在飞机检测并将垃圾桶放在ARPlane上后,每当用户点击按钮扔球时,就会调用一种方法。球的物理体类型是动态的,并且正在使用SCNNode在视图控制器文件(未在.scn文件中创建)中创建和投掷,并使用physicsBody应用力。

let ball = SCNSphere(radius: 0.025)
let ballNode = SCNNode(geometry: ball)
let forceDirection = SCNVector3Make(0, 0, -2)
let physicsBody = SCNPhysicsBody(type: .dynamic, shape: SCNPhysicsShape(geometry: ball, options: nil))
physicsBody.isAffectedByGravity = true
physicsBody.allowsResting = true
physicsBody.mass = 1
physicsBody.restitution = 1
physicsBody.friction = 0
physicsBody.applyForce(forceDirection, asImpulse: true)
ballNode.physicsBody = physicsBody
sceneView.scene.rootNode.addChildNode(ballNode)
.scn文件中的

节点

场景中地板的物理主体属性: enter image description here

一切都很好,使用力量投掷球并使用sceneView将它们添加到场景中但问题是球仍然穿过垃圾桶和地板本身,即使它们是运动的和/或静态。

**更新:在为球和飞机(地板)设置碰撞比特后,现在的问题是,即使我已经减少了垃圾的归还,球也不会留在垃圾桶内** / p>

0 个答案:

没有答案