ios - 从 SCNPhysicsBallSocketJoint 中移除弹性

标签 ios swift game-physics scenekit scnnode

我正在 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/

相关文章:

swift - 尽管位掩码不同,但 Sprite 碰撞

ruby - 计算下落物体的当前速度

c++ - 仅在 1 个轴上旋转对象

ios - xCode:如何监控任何正在运行的第三方应用程序的 CPU 使用率

ios - 删除文本字段的问题

ios - 如何让两个不同的 NS 定时器同时工作?

无限/重复世界的数学/计算与旋转

ios - Apple Configurator 中的 iOS 10 不显示 NSLog 语句

ios - Xcode 7/iOS 9:未在SKNode中使用OpenGL片段着色器

ios - Xcode 8 - 一些 View 和 VC 没有出现在模拟器上