私のゲームでは、私のビューは矛盾したレートを引きます。それは順番にそれをglitchyにします。私はinvalidate()で多くの問題に取り組んできました。メアドード。あらゆるシンプルなアイデア - どこでも私は沢山の強烈なコードによって投げられます。一貫したゲームループを作る方法
0
A
答えて
1
それは考慮に間を通過した実際の時間がかかることはありません、あなたのゲームループのように聞こえます反復。
問題は、ループの繰り返しの間に一定の時間があるという前提です。しかし、この時間は、シーン内のオブジェクトの数、コンピュータ上の他のプロセス、またはコンピュータ自体によって変わる可能性があります。
これはゲームプログラミングでは多少微妙な間違いですが、簡単に修正できます。トリックは、各描画ループの最後に時間を格納し、最後の更新の差分と開始時の現在の時間を取ることです。その後、実際の経過時間に基づいてすべてのアニメーションとゲームの変更をスケーリングする必要があります。私はしばらく前にここに私のブログにこのについての詳細を書いてきました
:http://laststop.spaceislimited.org/2008/05/17/programming-a-pong-clone-in-c-and-opengl-part-i/
パートIIは、具体的には、この問題を取り上げます。 http://laststop.spaceislimited.org/2008/06/02/programming-pong-in-c-and-opengl-part-ii/
2
多くの情報、具体的にはコードを提供していません。あなたができる
いくつかあります:
- アプリケーションを観察する最低値に初期フレームレートは現在の1/60に設定されますが、フレームレートが継続的に低下した場合、すなわち、で動作を設定30分の1に設定します。
- より効率的になるように図面の呼び出しを再現します。
- 行列を掛けることによって、つまり3つの別々の変換を適用するのではなく、3つの行列を掛け合わせてその変換を頂点に適用するなど、行列を乗算することによって複数の変換を1つの変換に組み合わせようとします。
- 不要な場合は、リスト/配列全体を反復処理しないようにしてください。
- アンボクシングのオーバーヘッドを避けるために、ループ内で処理する必要があるものに対して、可能な最も低いレベル/最も基本的な構造を使用しようとします。あなたを固定する
[2012年8月27日の編集]
役立つリンクはタイムステップ:http://gafferongames.com/game-physics/fix-your-timestep/
関連する問題
- 1. アンドロイドで一貫したWIFI接続を作る方法
- 2. RxJSを使用してゲームループを作成する方法
- 3. 「レース」の外観。一貫した行の長さを作成する方法
- 4. オブジェクトの一貫したGuidの作成
- 5. AndroidのHttpUrlConnection動作が一貫しない - デバッグ方法
- 6. NSTimerを使わずにiPhoneでゲームループを作る方法
- 7. 一貫性のない一定のターゲットが一貫して動作しない
- 8. 一貫したカラースキームのサイドバイサイドバープロット
- 9. OpenGLの一貫したフリーハンドライン
- 10. SQLの一貫したエラースローエラー
- 11. Pythonの一貫したバックアップ
- 12. ODEと一貫した用語の数値方法
- 13. アクションケーブルを使用して状態を一貫させる方法
- 14. IDataReader.Read()を使用した動作が一貫しない
- 15. UITableViewCellのUITextViewでNSAttributedStringを一貫して描画する方法
- 16. LabelBinarizerがNaNのために一貫して動作しない
- 17. OpengGLSurfaceを使ってAndroid用のゲームループを作る最良の方法
- 18. WSO2 CEP:Siddhi QL:特定の条件に一致した後にイベントを一貫してアラートする方法
- 19. 2レベル抽象クラス階層「一貫した方法分解能」エラーなし
- 20. Magentoの一貫した製品のURL
- 21. CMakeとVisual Studioの一貫したビルドタイプ
- 22. CUDAがグローバルメモリへの一貫したアクセス
- 23. 一貫した用語:Modeling、DAE、ODE
- 24. Laravel + Dingoの一貫したREST APIレスポンス
- 25. Pythonプロジェクトの一貫したバージョン管理
- 26. Coqのセットの一貫した配合?
- 27. Cの辞書の一貫したハッシュコード
- 28. 私のmailchimpフォームをデスクトップとモバイルで一貫性を持たせる方法
- 29. 値を変更してデータフレームを一貫してホットエンコードする方法は?
- 30. WSO2 GREGサービスレジストリストアは、一貫した方法でスタイリングアセットではありません
あなたの質問は、問題の非常に説明的ではありません。いくつかのコードを投稿できますか?あなたのゲームエンジンの主なビットは? – slayton