FBO

我们看电视时,看到的屏幕称为OSD层,也就是说,只有在OSD层上显示图像我们才能看到。现在,我需要创建一个虚拟的、看不见但是可以在上面画图(比如说画点、线)的OSD层,我称之为offscreen(后台缓冲区)。这个offscreen存在于内存中,我们在上面画图,这个offscreen上面的东西可以显示在OSD层上。所有绘制操作首先呈现到这个内存缓冲区,而不是屏幕上的绘图图面。所有绘制操作完成后,内存缓冲区直接复制到与其关联的绘图图面。因为在屏幕上只执行一个图形操作,所以消除了由复杂绘制操作造成的图像闪烁。

如果不使用双缓冲每个线或点的绘制都刷新一下屏幕会造成图片闪烁,Opengl提供了FBO技术,前帧缓存是屏幕上显示的内容,使用FBO创建后帧缓存,当后帧缓存绘制完毕以后,可以快速的转换为前帧缓存,实现屏幕渲染过程

你可能感兴趣的:(FBO)