首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >glReadPixels到ImageMagick

glReadPixels到ImageMagick
EN

Stack Overflow用户
提问于 2012-07-16 10:20:28
回答 1查看 393关注 0票数 0

我想将OpenGL视图保存为带有ImageMagick的图像。我在网上搜索并找到了一些有关这方面的信息。所以我现在知道我需要使用glReadPixels。没关系,但是如何从这些读取的像素生成图像呢?

现在代码如下所示:

代码语言:javascript
复制
char *buffer = (char*) calloc(viewHeight * viewWidth * 4, sizeof(char));
glReadPixels( 0, 0, viewWidth, viewHeight, GL_RGBA, GL_BYTE, buffer );
Blob b( buffer, 4 * viewWidth * viewHeight );
Image saveimage(b);
saveimage.write("subimageGcrop.png");
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-16 10:27:06

使用glReadPixels读取像素时,需要将它们复制到斑点对象中。然后可以创建图像对象,并将其写入文件。

就像这样:

代码语言:javascript
复制
    char *buffer; // needs to be big enough
    glReadPixels( 0, 0, width, length, GL_BGR, GL_BYTE, buffer );
    Blob b( buffer, 3 * width * length );
    Image i( b, 3 * width * length, 3 );
    i.write( "img.jpg" );

您可能需要调整参数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11502357

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档