We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi.
Usually, I use render-to-texture technique to process the image.
However, recently, I need to read the contents to the system memory.
So, I tried to use glReadPixels as follows:
GLubyte pixels[256] = { 0, 0, 0, 0 };
GL_CHECK( glReadPixels(100, 100, 2, 2, GL_RGBA, GL_UNSIGNED_BYTE, pixels) );
LOGI("%d %d %d %d\n", pixels[0], pixels[1], pixels[2], pixels[3]);
This code works well on my desktop PC with NVIDIA card.
But, it fails with ARM Mali-T628.
Debug: test0clear.cpp:36: glGetError() = OUT_OF_MEMORY at test0clear.cpp:36
Here is the details of my system:
EGL vendor = ARM
EGL version = 1.4 Midgard-"r4p0-02rel0"
EGL client apis = OpenGL_ES
GL ES vendor = ARM
GL ES version = OpenGL ES 3.0
GL ES renderer = Mali-T628
GL ES SL version = OpenGL ES GLSL ES 3.00
Do you have any idea to overcome this abnormal situation?
Thanks in advance.
--
oceancru