0

嘿伙计们,感谢您的关注。我从 MSDN 构建了简单的 D2D 应用程序,可在此处获得。现在,我想绘制一些图元并添加一个 fps 计数器。

我有一个 OnRender() 事件,我在其中绘制矩形等。我还调用了 RenderTextInfo(),我调用了 RenderTarget->DrawText。我在哪里添加计算每秒帧数的逻辑?

非常感谢。

4

1 回答 1

2

我不知道确切的 Direct2D 内容,但这可能会有所帮助。

基本上,你有两个选择。绘制帧时或每秒(或任何其他时间间隔)更新帧速率。

如果你在画一帧的时候计算它,你可以简单地得到你画一帧的当前时间,然后减去你画最后一帧的时间。这让你有时间画这个框架。其倒数(即 1/x)是帧速率。

如果您以固定的时间间隔计算它,则需要在每个间隔触发一些事件,以检查自上次触发该事件以来绘制了多少帧。将其除以您的时间间隔(如果是一秒,您当然不需要除以),这就是您的 fps 计数。每次绘制框架时不要忘记增加一些计数器。

于 2010-09-15T00:46:27.050 回答