glReadPixels get wrong data in android opengl es 2.0 -


i yuv data camera , , send them opengl, use fragment shader convert data rgba format , show on screen. goes when use glreadpixels rgba data framebuffer int array, wrong data.

// use vbo draw glbindbuffer(gl_array_buffer, squareverticesbufferid); glvertexattribpointer(gvpositionhandle, 2, gl_float, gl_false, 0, 0); glenablevertexattribarray(gvpositionhandle); glbindbuffer(gl_array_buffer, textureverticesbuferid); glvertexattribpointer(gvtexturehandle, 2, gl_float, gl_false, 0, 0); glenablevertexattribarray(gvtexturehandle); glbindbuffer(gl_element_array_buffer, squareverticesindexbufferid); gldrawelements(gl_triangle_strip, 4, gl_unsigned_int, 0);  // use glreadpixels read rgba data unsigned char *returndatapointer = (unsigned char*) malloc(width * height * 4); glreadpixels(0, 0, width, height, gl_rgba, gl_unsigned_byte, returndatapointer); 

unfortunately wrong data, last thousands elements in array 0s,the same code works on ios, did miss something?

i work on android 4.0.3 , use opengl es 2 ndk.


Comments

Popular posts from this blog

django - How can I change user group without delete record -

java - Need to add SOAP security token -

java - EclipseLink JPA Object is not a known entity type -