我目前正在编写一个SDL2游戏引擎,到目前为止它运行良好,但SDL2无法解决一个问题:一个体面的计时器。现在,它使用默认的SDL2计时器,但它只有毫秒支持;这对测量FPS不是很好。主要问题是500FPS和1000FPS之间没有任何东西,所以它是一个或另一个。显然,潜在的游戏玩家会想要比这更准确的东西,并且从这些数字中获得准确的平均值几乎是不可能的。
所以我的问题是,是否有任何时钟库可以在Windows,Mac和Linux上提供纳秒/微秒(最好是前者)时间测量? (甚至可能是Android和iOS,但这有点延伸。)
如果没有,是否每个操作系统都有不同的库我可以#if WINDOWS
或者还有什么东西可以获得纳秒/微秒的时间?
编辑:评论指出应该有更多的信息,所以我使用的是C ++ 14,也将在Mac和Linux上使用。在Windows上,我使用MSVC(Visual Studio),我计划在Mac上使用XCode,而对Linux则不太确定。将作为朋友。
答案 0 :(得分:1)
std::chrono是什么?稳定的时钟可能没问题。
答案 1 :(得分:0)
我最近一直在学习这个新图书馆,我认为它可以帮助你解决问题。
SFML http://www.sfml-dev.org/tutorials/2.3/
SFML /时间
http://www.sfml-dev.org/tutorials/2.3/system-time.php
希望这有帮助。
答案 2 :(得分:0)
GLFW有一个非常准确的计时器。据我所知,这是一个毫秒计时器。 GLFW也是一个非常不错的库,用于窗口管理和输入,如鼠标/键/游戏手柄等。