三页翻转缓冲区 - 可能吗?

时间:2016-04-17 19:06:24

标签: page-flipping

我刚刚发现了什么是双缓冲区,我完全理解它们是如何工作的以及它们的使用原因(感谢维基百科上帝!)

我也理解三重缓冲区用于平滑的图形动画。

但是,页面翻转(也显然称为乒乓缓冲)显然也更快,并消除了图形的撕裂。

所以我的问题是:

  1. 是否有可能充分利用两个世界并拥有三页翻页缓冲区?那么动画不仅光滑而且没有撕裂。
  2. 是否值得去创建这个三页翻页缓冲区的麻烦?例如,它会使动画更快或只是给设备带来不必要的压力吗?
  3. 提前谢谢!

1 个答案:

答案 0 :(得分:1)

我所知道的大多数硬件都使用了维基百科所称的"the page-flip method" - 即。通过切换哪个缓冲区被视为前缓冲区来显示动画的新帧,而不进行任何复制操作。这个方法与三重缓冲完全兼容 - 如果你可以改变你认为前缓冲区的两个缓冲区,你通常可以做三个缓冲区。

首先使用三个缓冲区是一种权衡:你不会浪费时间没有缓冲区来绘制(如果绘图速度比刷新速度快),但它会占用更多内存并且可能增加额外的延迟。