Corona SDK彻底破坏了物理关节。

我正在使用Corona SDK创建一个游戏,其中不同的小球会通过焊接关节弹跳和粘在一起。当我重置游戏时,所有的关节都被破坏,然后所有的小球都被重新定位。这是我的一些代码:

--stickJoints和balls是包含所有焊接关节和球体对象的表
resetTotal = function()
    for i=1,#stickJoints do
        stickJoints[i]:removeSelf()
        stickJoints[i]=nil
    end
    for i=1,20 do
        --这会重置所有球,并将线性和角速度设置为0
        resetP(balls[i],1000+(i-1)*400,5000,0)
    end
end

问题是,当我点击重置按钮时,暂时连接的球体会相互作用。有什么想法是有帮助的。谢谢!

点赞
用户869951
用户869951

我认为您最好的选择是:

  1. 使用 timer.performWithDelay 来调用一个函数,在物理引擎破坏约束之后重新定位球。
  2. 将每个球从物理世界中移除,然后使用延迟函数(参见1)在重新定位后重新添加它们。
2014-09-14 14:17:58