游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4742|回复: 11

实时帧率问题

[复制链接]

16

主题

36

帖子

36

积分

注册会员

Rank: 2

积分
36
发表于 2007-8-27 15:53:00 | 显示全部楼层 |阅读模式
请问一下,在opengl中,有什么代码能实时显示系统运行的帧率吗

2

主题

429

帖子

435

积分

中级会员

Rank: 3Rank: 3

积分
435
发表于 2007-8-27 17:11:00 | 显示全部楼层

Re:实时帧率问题

是想显示FPS吧? 网上一搜一大把。

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2007-8-27 19:30:00 | 显示全部楼层

Re:实时帧率问题

{
  渲染();
  读取时间t1;
  time=t1-t0;
  FPS=1/time;
  t0=t1;
}

16

主题

36

帖子

36

积分

注册会员

Rank: 2

积分
36
 楼主| 发表于 2007-8-28 08:46:00 | 显示全部楼层

Re:实时帧率问题

// Get FPS
        t1= GetTickCount();
        time=t1-t0;
        fps=1.0/time;
        t0=t1;


        char szTitle[256]={0};                                                                        // Build The Title String
        sprintf( szTitle, "Lesson 45: NeHe & Paul Frazee's VBO Tut - %d Triangles, %d FPS", 12000, fps );

        SetWindowText( hWnd, szTitle );                                // Set The Title

但帧率总是0呢

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2007-8-28 10:55:00 | 显示全部楼层

Re:实时帧率问题

%d 是错误的
应该是 %f

因为 fps 最好是浮点数。

还有,时间计算也有问题。
time应该变换成“秒”才行,而不应该是 ms。
所以应该 time/=1000;
所以可以写成 fps=1000/time;

还有,GetTickCount() 这个函数在 NT 系统上很不准确。
WIN2000 和 WINXP 都是基于 NT 技术的。
最好用 QueryPerformanceCounter(&t1);

27

主题

418

帖子

455

积分

中级会员

Rank: 3Rank: 3

积分
455
QQ
发表于 2007-8-30 21:52:00 | 显示全部楼层

Re:实时帧率问题

谁告诉你GetTickCount在NT系统上不准确的?

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2007-9-3 11:25:00 | 显示全部楼层

Re: Re:实时帧率问题

testerHooK: Re:实时帧率问题
谁告诉你GetTickCount在NT系统上不准确的?

我是自己做了实验,
GetTickCount 的最小时间间隔只有 15ms
所以如果两次的渲染间隔不够 15ms的话,
时间间隔 time 就等于 0

27

主题

418

帖子

455

积分

中级会员

Rank: 3Rank: 3

积分
455
QQ
发表于 2007-9-3 13:41:00 | 显示全部楼层

Re: 实时帧率问题

呵呵,你们真行。
我可以保证,GetTickCount精确到10毫秒以下是没问题的。

27

主题

418

帖子

455

积分

中级会员

Rank: 3Rank: 3

积分
455
QQ
发表于 2007-9-3 13:43:00 | 显示全部楼层

Re:实时帧率问题

当然是在单线程里了。

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2007-9-3 14:55:00 | 显示全部楼层

Re:实时帧率问题

怎么保证?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-21 17:50

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表