对于60帧/秒,偶尔10毫秒的延迟是否可以

本文关键字:是否 延迟 偶尔 60帧 对于 10毫 | 更新日期: 2023-09-27 18:19:53

在我的XNA游戏中,我的计算机(2.5 Ghz双核Intel Centrino 2)在调试模式下需要大约10ms的操作。它每几分钟只运行一次,基本上只是整数数学/逐位运算,尽管次数很多。

我可以在我的Update方法中直接调用它吗,或者它会导致太多的滞后?我的更新方法的其余部分不应该超过5ms(尚未创建,因此无法进行评测)。我也可以把它分成几帧,只要所有的步骤都按顺序调用。

主要问题是:这是否值得创建一个单独的线程,或者在60fps时延迟是否无关紧要?

对于60帧/秒,偶尔10毫秒的延迟是否可以

如果可能的话,我会为任何可能导致绘图延迟的东西创建一个单独的线程。随着游戏的发展和获得新功能,最好始终牢记性能,而不是回到代码中,试图解耦从一开始就可以设计得更好的元素。

如果代码是FPS关键的,并且不能保证代码需要多长时间,我会使用一个单独的线程。。。和渲染帧并不重要。

你的系统可能需要10毫秒,但其他系统呢?即便如此,有时也可能引起明显的紧张。

让我们检查数学

60 Frames per second = 16.666(ms) theoretically available per frame.

现在,根据你每帧所做的其他事情,这可能是可以接受的。

更重要的是,这种操作对未来的框架至关重要吗?

如果是这样的话,你没有太多的选择(除了尽可能地优化它)。

如果没有,那么您应该为此操作生成一个单独的线程。