2011-07-03 6 views
1

私は480x320である小さなシンプルな世界を作成しました。 スムーズなスクロールを実装しましたが、私が気づいている問題の1つは、わずかに数回振れていることです。 私は、なぜそれが吃音しているのか知っていると思うが、私の問題をいかに正確に解決するかを理解することはできない。 スクロール計算にデルタタイムを使用していないのは、それだけで私をさらに混乱させるからです。 デルタ値はどのように使用されますか? 私は通常デルタタイムとして.2somethingのような値を得ています。 私はFPS制限を30FPS(正確には33)に設定しています。フレームレートはすべてのテストで30未満になっていません。 私の解決策は、TILE_SIZE(32)でxPos値を増やし、camera.x値をxPosと比較し、camera.xを一定量(4)増減させます。 この例ではデルタの使い方がわかりません。 私は試しました: スピード* deltaTime =間違いなく正しいです。 スピード*(1 + deltaTime)=正しくありません。 SPEED +/- deltaTime =より多くの吃音。Androidのopenglesスクロールスクロール

デルタタイムを使用していないと思っていますが、吃音を引き起こしていますか?もしそうなら誰かが私を助けることができますか? これはまったく別の問題ですか?

+0

あなたの計算はすべて浮動小数点または二重右であると仮定しますか? – mibollma

+0

が正しい。実際にちょうど浮かぶ – semajhan

+0

あなたのDELTA時間は33FPSと仮定して約0.03fになるはずです。あなたのゲームが1秒間にUNIT(10)をスクロールすると仮定すると、POSITION = POSITION + UNIT * DELTAを使って現在の位置を計算します...これは役に立ちますか?あなたの場合、xPosとcamera.xが何であるかを完全には理解していません。 – mibollma

答えて

0

固定時間ステップアプローチを使用すると、より一貫した結果が得られます。

今では非常に有名な "Fix your Timestep!"記事、私はそうすることをお勧めします。

乾杯!

関連する問題