我正在 Swift 中构建我的第一个应用程序,它基于您在酒吧看到的 比米尼环抛环游戏,一个环连接到天花板上的绳子上。我正在使用 SCNPhysicsBallSocketJoint 连接一堆小球体,就像一根绳子/绳子一样。我得到了一些不错的早期结果,但球体之间的联系太有弹性了。 repo 是 here如果您想自己运行它,但这是连 catch 体的代码。
/** Generate our rope links **/
var cnt:Float = 0.0
var previousLink: SCNNode = ropeObject.getRope()
var links :[SCNNode] = [SCNNode]()
while cnt < 4.0 {
let link = ropeObject.getLink( y: Float(cnt) )
links.append(link)
let joint = SCNPhysicsBallSocketJoint(
bodyA: link.physicsBody!,
anchorA: SCNVector3(x: -0.05, y: -0.05, z: -0.05),
bodyB: previousLink.physicsBody!,
anchorB: SCNVector3(x: 0.05, y: 0.05, z: 0.05)
)
scnScene.physicsWorld.addBehavior(joint)
previousLink = link
cnt += 0.1
}
最佳答案
尝试显着增加球体的 mass
属性,这会导致弹性降低。
另外,Chris,非常感谢你在你的博客中发布这个项目,它对我的绳索状物体帮助很大。
关于ios - 从 SCNPhysicsBallSocketJoint 中移除弹性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45897278/