固定FPSについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
たこやき

固定FPSについて

#1

投稿記事 by たこやき » 15年前

一つ質問なのデですが、FPSを固定することはできたのですが(timeBeginPeriod,timeEndPeriodを使用する)
これってパソコンによっては変化することはあるのでしょうか?

たこやき

Re:固定FPSについて

#2

投稿記事 by たこやき » 15年前

環境書くの忘れてました。win2000~winXPです。

とおり

Re:固定FPSについて

#3

投稿記事 by とおり » 15年前

このサイト内を検索した限りでは、timeBeginPeriodという変数名で記事は見つかりませんでした。
ただし、以下2つの記事のどちらかを参考にしてFPSの処理を実装しているのであれば、60フレームで
表示させるように重みの処理を行っているので、パソコンによって変化しますよ。

・「ゲームプログラミングの館」s6. FPSを表示する。
・「旧シューティングゲームの館」3. 静的変数を使用してFPSを表示する。

また、パソコンを変えなくても、以下のようなプログラムでFPSの低下を検証できます。

FPSを固定して表示するプログラムが書けたのであれば、画像から読み込んだキャラクタなどを表示
するプログラムも作れると思います。まずは100000キャラクタを毎回描写します。
それができたら、キャラクタのx座標、y座標を計算して動かすプログラムにします。

すると1フレームである1/60秒(16ミリ秒~17ミリ秒)で、100000個の画像を表示しなければなりません。
かなりスペックが高いパソコン出ないと、1/60秒では、100000キャラクタを表示できないので、
30FPSとかになってしまいます。

フレームの増加と共に、表示する画像を増減させたりしてもFPSの変化が分かりやすいと思います。

kazuoni

Re:固定FPSについて

#4

投稿記事 by kazuoni » 15年前

関数timeBeginPeriodはSDK依存なので、windows(95以降)でしか動作しません。
また、もちろん、FPSはユーザーの環境によるので、
自分のPCスペックが並だとしても、
一概に「FPS=60がどのパソコンでも保てる」とはいかないですね。

たこやき

Re:固定FPSについて

#5

投稿記事 by たこやき » 15年前

回答ありがとうございます。

1、・「ゲームプログラミングの館」s6. FPSを表示する。を
xpで自分で簡単なゲームプログラムを作ってvistaで使ってみたのですが、処理落ち(一瞬止まる(?))
して見栄えが悪くて、自分で考えたのでやったら処理を落ちは最小限に(1より一瞬止まることを
少し抑えることが出来ました)、できたのですがただFPSが56~59になるのですが、こういう場合自分で作った
プログラムの方を作った方がよいのでしょうか?

閉鎖

“C言語何でも質問掲示板” へ戻る