box2dのApplyForceと落下速度が同時に安定しません。ご教示ください。

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
rab

box2dのApplyForceと落下速度が同時に安定しません。ご教示ください。

#1

投稿記事 by rab » 6年前

どうしてもApplyForceと落下速度が同時に一定になりません・・
※一定にならないというのはfpsによって大きくなったり小さくなったりするという意味です。
※固定fpsにすれば簡単に同時に安定させる事が出来ますがfpsが変動する場合で実現したいです。

(1) 落下速度は安定、ApplyForceが高くなったり低くなったりする

コード:

b2Vec2 vec(0.0f, -100.f);
Body.ApplyForce(vec, center, true);
b2Vec2 Gravity(0.0f, 30.f);
World.SetGravity(Gravity);
World.Step(1.0f/fps, 10.f, 10.f); //fpsは現在のfps
(2) 落下速度は安定、ApplyForceが高くなったり低くなったりする

コード:

b2Vec2 vec(0.0f, -100.f);
Body.ApplyForce(vec, center, true);
b2Vec2 Gravity(0.0f, FPS_value(30.f)); //FPS_valueはFPSに従って重力を調整
World.SetGravity(Gravity);
World.Step(1.0f/60.f, 10.f, 10.f);
(3)落下速度は安定しない、ApplyForceの動きは安定

コード:

b2Vec2 vec(0.0f, -100.f);
Body.ApplyForce(vec, center, true);
b2Vec2 Gravity(0.0f, 30.f);
World.SetGravity(Gravity);
World.Step(1.0f/60.f, 10.f, 10.f);

b2Vec2 vec(0.0f, -100.f); //ここにもfpsに従って調整したりしたのですがダメでした・・

“C言語何でも質問掲示板” へ戻る