现在的位置: 首页 > 综合 > 正文

双缓冲 Double Buffering

2013年03月04日 ⁄ 综合 ⁄ 共 393字 ⁄ 字号 评论关闭

前端缓冲(Front Buffer)是一块能直接映射到显示器的内存区域。当在其上绘图时,它们都会立刻显示出来。在 WndProc中的WM_PAINT消息中通过BeginPaint()得到的HDC就是前端缓冲的HDC;

    为了防止闪烁,需要在内存中另外创建一块区域,其格式和大小都与前端缓冲器完全相同,并在其上进行所有的绘画。这一块区域就是后备缓冲区。由于是在一个离屏(off-screen)缓冲器上进行绘画,因而在画的时候根本不会有任何图形显示出来。用户必须做的(在每一帧)中只是将后备缓冲区中画好的内容复制到前台缓冲区(这种操作通常称做blitting,即显存位块传送)。由于这种传送速度极快,几乎是立刻发生,屏幕刷新不会由于电子枪的移动而变得混乱,这样实现了不闪烁的显示。这一技术就称为双缓冲技术(Double Buffering), 有时也称为页面切换技术(Page Flipping)。

抱歉!评论已关闭.