2014-09-29 91 views
0

我在场景中有两个动态物体,实际上它们是两个球。但是我对碰撞行为并不满意,例如碰撞时,一个球速度较快,一个球变慢,有时一个球完全停止。我知道这是正常的根据物理规则,但我想要静态速度,即使他们碰撞。其实我开发它在coronalabs所以这里也是我怎么加了两个球动态物体碰撞行为

ball1 = display.newCircle(ballx, bally, ball_radius) 
    physics.addBody(ball1, "dynamic", { bounce = 1, density =1, friction = 0, radius = ball_radius }) 
    ball1:setFillColor(255,215,0) 
    ball1:setLinearVelocity(500,500) 

    ball2 = display.newCircle(ballx+5, bally+25, ball_radius) 
    physics.addBody(ball2, "dynamic", { bounce = 1, density =1, friction = 0, radius = ball_radius }) 
    ball2:setFillColor(255,0,0) 
    ball2:setLinearVelocity(500,500) 

回答

0

代码这应该是achieveable通过简单地改变你的密度为0,并反弹至1

physics.addBody(ball, "dynamic", { bounce = 1, density = 0, friction = 0, radius = ball_radius }) 

另一种方法碰撞后可以使用碰撞检测来设置setLinearVelocity()。这样一来,失去的力量就会立即以任何你希望球在碰撞后行进的速度进行,但是会以一个新的方向。