0

これはかなり簡単だと思います。

画面の片側にあるネットにノックできる落下するビーンバッグをシミュレートしようとしています.

私が持っているのは、マウスに応じて動く手またはコウモリを表す動的なボディと円の形状です。ビーンバッグを表すダイナミックな体の円の形を落とします。そして単純に、ネットの開いた上部を表す 2 つの小さな円の形です。

手/バットを動かすには、各ステップで線形速度を更新して、この力をお手玉に適用できるようにします。

// move hand
deltaX = (handBody.GetPosition().x * scaleF) - mouseX; 
deltaY = (handBody.GetPosition().y * scaleF) - mouseY; 
var newVel:b2Vec2 = new b2Vec2(-deltaX, -deltaY);
handBody.SetLinearVelocity(newVel);

私の問題は、ノックの初期力の一部をビーン バッグに吸収させたいということです。現時点では、落ちてくるバッグを素早くスワイプするだけで簡単に画面から飛ばすことができます。摩擦、減衰、またはその他の設定を使用する簡単な方法はありますか? 私は試しましたが、効果を生み出すことができないようです。バット/手の更新された位置に影響を与えることなく、衝突力の一部を手動で削除する方法を誰かが提案できますか?

ティア、クリス

4

1 に答える 1

0

新しい速度/お手玉速度に 0.8 などを掛けて、これを減衰効果と呼ぶことはできませんか?

しかし、提供されたコードは奇妙に思えます。衝撃やビーンバッグの衝突に関連するものは何も見当たりません。これは単に手のベルを設定するだけですか?

于 2012-08-06T17:29:51.887 に答える