時間ベースの動き対フレームレートベースの動き?


8

私はゲームプログラミングとSDLが初めてで、LazyfooのSDLチュートリアルに従っています。私の質問は基本的にされて、時間ベースのモーションやフレームレートベースの動きに関連して、より良いか、適切な状況に応じて、?。これらの各メソッドが使用される例を教えていただけますか?

私が持っているもう1つの質問は、lazyfooの2つのモーションチュートリアル(FPSベース時間ベース)で、時間ベースの方法がはるかにスムーズなアニメーションを示していたのに対し、フレームレートベースの方法は少し問題があったということです。 2つのプログラムを比較したときのドットとその現在の位置。

初心者の場合、どの方法に固執する必要がありますか?(必要なのはスムーズなアニメーションだけです)。


回答:


16

「FPSベース」として表示されているものがあります。。。まあ、基本的に、それはひどいです。ゲームの速度を特定の1台のコンピューターのパフォーマンスに固定しています。高速なコンピュータにアップグレードすると、ゲームは突然ターボ速度で実行されます。低速なコンピュータにダウングレードすると、スローモーションでぐるぐる回ります。

本当の選択は、固定時間ステップと可変時間ステップのどちらかです。その時点で、私はこの優れた投稿を深く掘り下げます。


実行しているコンピューターに応じて物事が速くまたは遅く動くだけでなく、すべてのアニメーションが同じ速度で動く-つまり、一部のアニメーションは超高速で実行され、一部のアニメーションは非常に遅く実行され、実際に奇妙に見える。
ShrimpCrackers 2010

しかし、フレームレートの上限がこれを考慮に入れていませんか?
2010

@ sil3nt、予想外に遅いコンピューターで誰かが実行しているとき、または十分なCPUを使用してフレームレートの上限を下回るまで。
ZorbaTHut

では、プログラムが実行されているコンピュータがFPSを処理できる場合、フレームレートベースの方法は問題ありませんか?
サイレント

@ sil3nt、はい、コンピューターが常にFPSを処理できることを保証でき、そのフレームレートにロックする信頼できる方法がある場合。これは十分な修飾子であり、特に固定タイムステップがどれほど単純であるかについて、私がそれを使用するのを非常にためらいます。
ZorbaTHut 2010
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.