一つ質問なのデですが、FPSを固定することはできたのですが(timeBeginPeriod,timeEndPeriodを使用する)
これってパソコンによっては変化することはあるのでしょうか?
固定FPSについて
Re:固定FPSについて
このサイト内を検索した限りでは、timeBeginPeriodという変数名で記事は見つかりませんでした。
ただし、以下2つの記事のどちらかを参考にしてFPSの処理を実装しているのであれば、60フレームで
表示させるように重みの処理を行っているので、パソコンによって変化しますよ。
・「ゲームプログラミングの館」s6. FPSを表示する。
・「旧シューティングゲームの館」3. 静的変数を使用してFPSを表示する。
また、パソコンを変えなくても、以下のようなプログラムでFPSの低下を検証できます。
FPSを固定して表示するプログラムが書けたのであれば、画像から読み込んだキャラクタなどを表示
するプログラムも作れると思います。まずは100000キャラクタを毎回描写します。
それができたら、キャラクタのx座標、y座標を計算して動かすプログラムにします。
すると1フレームである1/60秒(16ミリ秒~17ミリ秒)で、100000個の画像を表示しなければなりません。
かなりスペックが高いパソコン出ないと、1/60秒では、100000キャラクタを表示できないので、
30FPSとかになってしまいます。
フレームの増加と共に、表示する画像を増減させたりしてもFPSの変化が分かりやすいと思います。
ただし、以下2つの記事のどちらかを参考にしてFPSの処理を実装しているのであれば、60フレームで
表示させるように重みの処理を行っているので、パソコンによって変化しますよ。
・「ゲームプログラミングの館」s6. FPSを表示する。
・「旧シューティングゲームの館」3. 静的変数を使用してFPSを表示する。
また、パソコンを変えなくても、以下のようなプログラムでFPSの低下を検証できます。
FPSを固定して表示するプログラムが書けたのであれば、画像から読み込んだキャラクタなどを表示
するプログラムも作れると思います。まずは100000キャラクタを毎回描写します。
それができたら、キャラクタのx座標、y座標を計算して動かすプログラムにします。
すると1フレームである1/60秒(16ミリ秒~17ミリ秒)で、100000個の画像を表示しなければなりません。
かなりスペックが高いパソコン出ないと、1/60秒では、100000キャラクタを表示できないので、
30FPSとかになってしまいます。
フレームの増加と共に、表示する画像を増減させたりしてもFPSの変化が分かりやすいと思います。
Re:固定FPSについて
関数timeBeginPeriodはSDK依存なので、windows(95以降)でしか動作しません。
また、もちろん、FPSはユーザーの環境によるので、
自分のPCスペックが並だとしても、
一概に「FPS=60がどのパソコンでも保てる」とはいかないですね。
また、もちろん、FPSはユーザーの環境によるので、
自分のPCスペックが並だとしても、
一概に「FPS=60がどのパソコンでも保てる」とはいかないですね。
Re:固定FPSについて
回答ありがとうございます。
1、・「ゲームプログラミングの館」s6. FPSを表示する。を
xpで自分で簡単なゲームプログラムを作ってvistaで使ってみたのですが、処理落ち(一瞬止まる(?))
して見栄えが悪くて、自分で考えたのでやったら処理を落ちは最小限に(1より一瞬止まることを
少し抑えることが出来ました)、できたのですがただFPSが56~59になるのですが、こういう場合自分で作った
プログラムの方を作った方がよいのでしょうか?
1、・「ゲームプログラミングの館」s6. FPSを表示する。を
xpで自分で簡単なゲームプログラムを作ってvistaで使ってみたのですが、処理落ち(一瞬止まる(?))
して見栄えが悪くて、自分で考えたのでやったら処理を落ちは最小限に(1より一瞬止まることを
少し抑えることが出来ました)、できたのですがただFPSが56~59になるのですが、こういう場合自分で作った
プログラムの方を作った方がよいのでしょうか?