掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ゲームのスレッドの排他制御について (ID:67743)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> 高性能なPCほど細かい時間刻みで、 > 低スペックなPCほど荒い時間刻みで動くゲームを作ることができます これだと移動スピードが変化しませんか? 高スペックでは早く移動 低スペックでは遅い移動 今は次のようにしています。 while ( 終了条件 ){ dwGetTime = timeGetTime(); gameMain( dwGetTime ); // 描画周期 if ( (dwGetTime - dwCntTime) >= (1000 / 60) ){ gameDraw(); dwCount++; dwCntTime = dwGetTime; } // FPS表示周期(テスト用に設置) if ( (dwGetTime - dwFPSTime) >= 1000 ){ setFPS( dwCount ); dwCount = 0; dwFPSTime = dwGetTime; } Sleep( 1 ); } gameMain()関数で1フレームの処理を行いますが 自機移動は1000/60ミリ秒周期、 敵機移動は1000/60ミリ秒周期、 弾丸移動は1000/120ミリ秒周期 としています。 具体的に自機移動は if ( (dwGetTime - dwSaveTime) >= (1000 / 60) ){ 移動処理 弾の発射 当たり判定 dwSaveTime = dwGetTime; } としています。 敵機移動、弾丸移動も同じ感じです。 そのほか背景やアイテムも同じ考え。 > データ処理関数(dt); この関数で移動スピードの調整とかは どうなっているのですか?
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.