问题1:
与基本对象发生冲突的代码 - 管道工作不正确:
let tubeGeometry = SCNTube(innerRadius: 2, outerRadius: 2.5, height: 2)
let tubeMaterial = SCNMaterial()
tubeMaterial.diffuse.contents = UIColor.green
tubeGeometry.materials = [tubeMaterial]
let tubeNode = SCNNode(geometry: tubeGeometry)
tubeNode.position = SCNVector3(0, 0, 0)
let tubeShape = SCNPhysicsShape(geometry: tubeGeometry, options: nil)
let tubeBody = SCNPhysicsBody(type: .dynamic, shape: tubeShape)
tubeNode.physicsBody?.categoryBitMask = collisionTube
tubeNode.physicsBody?.collisionBitMask = collsionTarget
tubeNode.physicsBody?.mass = 1
tubeNode.physicsBody = tubeBody
scene.rootNode.addChildNode(tubeNode)
截图:
为什么球在物体的顶部?
问题2:
我仔细阅读手册以使用 SCNPhysicsShape 和 SCNPhysicsBody
类研究了对DAE对象施加约束的所有可能方法。 并得出结论,所有限制都必须在对象的单个物理模型中编写复杂的SCNNode包。
找到非常有趣的答案:
我真的希望有一种方法可以像让DAEShape = SCNPhysicsShape(geometry:“*。DAE”) ......,否则设置与复杂对象的碰撞可能需要一个月或者更多的发展。
例如,如何设计复杂管“DAE”对象的碰撞,如截图中的任何建议?
问题不在于性能,而在于以最直接的方式实现复杂3D对象的复杂约束,避免了编程的繁琐......
如何使用“DAE”对象的顶点,边和面设置物理约束?
我真的希望答案是...... 提前谢谢!
答案 0 :(得分:0)
Vue.prototype.auth