HSP | fps算出

HSP | fps算出

今度こそ、これで割と簡単に行けるはず。

// モジュール
#module "kerupanium"
#deffunc module_init // モジュール初期化命令
dim fps_time,60
return
#deffunc setfps // ループの先頭に置く。fps取得のためのデータを取得
fps_b=gettime(6)*1000+gettime(7)
fps_time(fps_s)=fps_b-fps_a
if fps_time(fps_s)<0 : fps_time(fps_s)+=60000
if fps_time(fps_s)=0 : fps_time(fps_s)+=1
fps_s=(fps_s+1)\60
fps_a=fps_b
return
#defcfunc getfps // fps取得。ループの先頭にsetfpsが必要
fps_p=0
repeat 60
fps_p+=fps_time(cnt)
loop
return 60000.0/fps_p
#global
module_init

// fpsのテスト
mes "きとーちゅー"
*main
redraw 0
setfps
if count\30=0 & count>120 : mes ""+getfps()
count+1
redraw
await 15
goto *main

以前と違って秒・ミリ秒しか取得してないから軽くなってるかも。
ただし、1ループに1分以上かかると正確な値出ない (それってどんな状況!?) 。


「HSP | fps算出」への2件のフィードバック

  1. 軽快な動作です^^
    私の環境では64fps辺り安定になってます。
    標準命令をお使いになってる所がまたニクイですね^^!

  2. どうもです!
    本当はDirectXを使ったほうがいいことはわかってるんですけど、やっぱり環境によって動作が変わるのが…。

コメントは受け付けていません。