ama*_*ara 9 graphics performance buffering
所以我一直在阅读很多关于openGL和gpus以及图形的内容,并且经常提到三重缓冲可以提供免费的性能提升.我知道它为什么有帮助; 实际上,你可以进行v-sync而不限于60或30或20或15等的帧率选择,所以你实际上可以达到55fps.但这实际上有成本吗?直觉上,我希望三重缓冲能够将输出延迟一帧,为所有内容增加一个非常小的延迟.
在55 FPS时,一帧不到20ms.所以它不是很自由,但它几乎总是值得花费.
但是,在15 FPS时,它可能非常明显.(顺便说一句,这是一台POS笔记本电脑.大多数3D游戏对我来说都很快.有些甚至更慢.)
有些人注意到滞后,特别是在较低的帧速率下,有时三重缓冲不能像预期的那样工作.(特别是在OpenGL中,硬件不能很好地支持的东西可以回归到(可能非常慢)软件仿真.这些天不应该是一个问题,但是呃.)所以大多数使用三重缓冲的程序也是如此包括禁用它的选项.您可能想要考虑做同样的事情.
引自Akenine-Möller等人的优秀"实时渲染"一书(http://www.realtimerendering.com/),第835页,其中几乎总结了你在答案中所提出的建议.问题,考虑滞后:
"三重缓冲比双缓冲有一个主要优点.使用它,系统可以在等待垂直回扫的同时访问待处理的缓冲区.通过双缓冲,交换可以停止图形管道.[...]三重缓冲的缺点是延迟增加到一整帧.这种增加延迟了对用户输入的反应,例如击键和鼠标或操纵杆移动."