1

我有这个屏幕:

在此处输入图像描述

我希望这个球使用加速度计移动并与墙壁碰撞。

当我宣布它为动态时,它移动但没有碰撞,当我宣布它为动态时,它的运动中有一种奇怪的颤抖,一段时间后停止碰撞并走出边界。我的代码(用于物理和运动功能)是:

function onTilt( event )

ball.x = (ball.x + event.xGravity * 20)
ball.y=(ball.y+ event.yGravity * 20)
end


physics.addBody ( mazepart1, "static" ,physicsData:get("mazepart1"))
physics.addBody ( mazepart1, "static" ,physicsData:get("mazepart2"))
physics.addBody (borders, "static" ,physicsData:get("borders"))
physics.addBody ( ball, "dynamic" ,physicsData:get("ball1"))

Runtime:addEventListener( "accelerometer", onTilt )

知道我做错了什么吗?

4

1 回答 1

0

尽量不要改变对象的xy,因为它可能会移动不自然,尝试改变重力本身,通过改变physics.setGravity(event.yGravity,event.xGravity)类似的东西来使移动变得真实。但是你的对象必须是动态的。

让重力移动你的球。

于 2013-06-14T01:39:14.427 回答