我试图对作为传感器的圆形体产生涡流效果。我一直在寻找这个,我寻找的所有示例都是用 C++ 或 Objective C 编写的,我似乎没有很好地翻译它们。
当我的对象碰撞时,它调用 beginContact(..) 并设置一个标志,以便我可以调用 bodyToUpdate.applyForce(...);
public void beginContact(Contact contact) {
setColliding(true);
}
//updating collition every frame
public void act(){
if (colliding) {
ball.getBody().applyForce(....);
}
如何计算施加每一帧以使其成为漩涡的力的大小?
编辑:
所以我现在让物体直接进入漩涡的中心,但没有“旋转”
public void act() {
if (colliding) {
ball.getBody().setLinearVelocity(0, 0);
ball.getBody().applyForce((portal.getBody().getPosition().x - ball.getBody().getPosition().x) * i,
(portal.getBody().getPosition().y - ball.getBody().getPosition().y) * i,
ball.getBody().getPosition().x, ball.getBody().getPosition().y, true);
i++;
} else
i = 10;
}