相关疑难解决方法(0)

为什么glReadPixels()在iOS 6.0中的此代码中失败?

以下是我用于从OpenGL ES场景中读取图像的代码:

-(UIImage *)getImage{

    GLint width;

    GLint height;

    glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_WIDTH, &width);

    glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_HEIGHT, &height);


    NSLog(@"%d %d",width,height);

    NSInteger myDataLength = width * height * 4;

    // allocate array and read pixels into it.
    GLubyte *buffer = (GLubyte *) malloc(myDataLength);
    glReadPixels(0, 0, width, height, GL_RGBA, GL_UNSIGNED_BYTE, buffer);

    // gl renders "upside down" so swap top to bottom into new array.
    // there's gotta be a better way, but this works.
    GLubyte *buffer2 = (GLubyte *) malloc(myDataLength);
    for(int y = 0; y < …
Run Code Online (Sandbox Code Playgroud)

opengl-es ios ios6

18
推荐指数
1
解决办法
9080
查看次数

标签 统计

ios ×1

ios6 ×1

opengl-es ×1