センサーである円体に渦効果を作ろうとしています。私はこれを探していましたが、私が探しているすべての例は 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;
}