在网上看到了这段代码
http://blog.youkuaiyun.com/chunxiaopengshan/archive/2010/03/29/5426568.aspx
不方便之处在于,事先要使用一个已存在的bmp文件。看了一下bmp的文件格式,修改了代码。
修改后,就不需要使用一个已存在的bmp文件了。
代码如下
严重注意:
使用方法。在渲染显示出模型后,再点击截图按钮截图。
记录开发抓图接口遇到的问题:
1.如果渲染窗口,部分在显示器范围内。OpenGL只会渲染在显示器范围内的场景。导致,截图中有部分为黑色。这是OpenGL内部实现的问题。无论使用什么技术,如FBO渲染到纹理。都会有此问题。这是不可避免的。
2.如果在代码内部,在刚绘制完场景后,调用截图函数。会出现如两个问题:首次截图为黑屏,第二次截图有黑边。猜测这是因为OpenGL内部应该异步绘制图形。与CPU不同步,导致了这个问题。