アクションゲーム製作総合スレッド Part1at GAMEDEV
アクションゲーム製作総合スレッド Part1 - 暇つぶし2ch322:名前は開発中のものです。
05/01/18 19:06:23 X88J3aOH
私は次のように解釈しています。

1) PeekMessage() だけでメッセージ(メイン)ループ
→ CPU 使用率 100%
→ 消費電力、発熱、Windows アプリとしての行儀の悪さが気になる。
2) フレーム毎に Sleep(0) を挿入する
→ プロセスの CPU 占有は解消できる。
→ システムは依然として CPU 100% を示す。過剰発熱は続く。
3) フレーム毎に Sleep(n) を挿入する
→ 余剰時間を待機する。CPU を解放できる。
→ ただし Sleep 中はメッセージループが滞ってしまう。やはり行儀が悪い。
4) そこでマルチスレッド。
  メッセージループとメインループのスレッドを分ける。
  ここで PeekMessage() すると (1) に戻ってしまうので GetMessage() を使う。
  メインループは Sleep(n) などで fps を調節する。

ただ、URLリンク(homepage1.nifty.com) には
「GetMessage() はスレッドを停止しない」とあります。
PeekMessage() + WaitMessage() で代替すべきなのかも。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch