掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ゲームのスレッドの排他制御について (ID:67742)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>PCの性能によって 色々方法はあると思うし私も専門家じゃないので あくまで参考までに見てください。 基本的には PeekMessageを使ってメッセージが流れていない間 動かし続けます。(単発スレッドでもいいです) データ処理の際、時間dt間での移動を求めるのに、 p = p + v * dt; という処理を書くと思いますが、このdtをうまく決めてやります。 while(終了条件) { // ゲームのメインループ nowtime = timeGetTime(); dt = nowtime - lasttime; lastime = nowtime; if( dt > 500 ) { // 安全のため dt = 500; } 描画関数(); データ処理関数(dt); } こうすることで描画関数とデータ処理関数を実行した時間に応じて 絵を移動させることができるため、 高性能なPCほど細かい時間刻みで、 低スペックなPCほど荒い時間刻みで動くゲームを作ることができます。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.