0

私は Box2D エンジンで Corona SDK を使用しており、物理エンジンに慣れるためだけに Flappy Bird スタイルのゲームを作成しようとしています。主人公の密度を上げたり、重力を上げたり、物理ステージのスケールを変更したりしてみましたが、やはり主人公が「浮いてる」感じです。

重力の増加は、私が正しく感じることができる限り近づきましたが、まだ問題があります. ユーザーが画面を連続してすばやくタップすると、勢いが速くなり、キャラクターが高速で画面から飛び出します。ここに私のコードがあります:

physics.setGravity( 0, 60 ) --default is 9.8

function screenTap()
    flappy.isFixedRotation = true
    flappy:applyLinearImpulse( 0, -300, flappy.x - 3, flappy.y )
    flappy.isFixedRotation = false
end

オリジナルの Flappy Bird ゲームでは、通常の重力を持っているように見えますが、画面をすばやくタップしても、鳥が飛び上がる速度は速すぎません。まるでボウリングの玉のような「重い」ものの感触がありましたが、この世界では明らかに、すべての質量の物体が同じ速度で落下します。私は物理エンジンの経験があまりないので、何か提案をいただければ幸いです。

4

1 に答える 1

2

最近フラッピー バードをプレイしたことがある方は、鳥を立て続けにタップしても垂直方向の速度が上がらないことに気付いたはずです。ゆるい鳥の開発者は、鳥を垂直に加速させるのではなく、タップするたびに鳥の垂直速度を特定の値に設定したようです。

したがって、私のアドバイスは、画面を加速するのではなく、画面をタップするたびにキャラクターの垂直方向の速度を設定値に設定することです。

于 2014-02-16T17:31:07.850 に答える