2016-08-30 2 views
0

у меня есть узел (nodeCollection), который имеет SCNNode как childNode, который создается так:SCNAction.rotate клипы через другие узлы

let boxGeo = SCNBox(width: 1, height: 1, length: 1, chamferRadius: 0.0) 
let node = SCNNode(geometry: boxGeo) 
node.physicsBody = SCNPhysicsBody.staticBody() 

Я также создает узел RedBox как так:

let redBox = SCNNode() 
redBox.geometry = SCNBox(width: 0.5, height: 0.5, length: 0.5, chamferRadius: 0.1) 
redBox.geometry?.firstMaterial?.diffuse.contents = UIColor.redColor() 
redBox.position = SCNVector3Make(0, 1, -2) 
redBox.physicsBody = SCNPhysicsBody.dynamicBody() 

Я затем запустить следующий код, чтобы сделать узлы вращаются

let rotateAction = SCNAction.rotateByAngle(CGFloat(M_PI_2), aroundAxis: SCNVector3Make(0, 0, 1), duration: 0.15) 
rotateAction.timingMode = .EaseInEaseOut 
nodeCollection.runAction(rotateAction) 

Я затем добавить как nodeCollection и redBo x as childNodes к SCNScene

Но, как вы можете видеть, когда я выполняю поворот на узле, сборка физика RedBox не выполняется. физика работает, когда красная коробка падает на сцену, как он останавливается и опирается на BlueBOX

Как я могу это исправить, так что, когда синяя коробка вращается, это не просто клип через RedBox

enter image description here

ответ

Смежные вопросы