Imagination PowerVR SDK Blog

PowerVR SGX544MP on Samsung Galaxy S4 (GT-i9500)

pvrtrace

#1

Hello all!



I have something like this:



glBindTexture(GL_TEXTURE_2D, 1);

glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, /other parameters/);



// create framebuffer

// create render buffer

glRenderBufferStorage(GL_RENDERBUFFER, GL_RGBA4, width, heigth);



// draw into framebuffer

glBindTexture(GL_TEXTURE_2D, 1);

glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, /other parameters/);



then i draw quad on the default framebuffer textured by texture "1"

as result i get this







If i change internal format of RenderBuffer on GL_RGBA8 it’s work fine.



I try to change all internal formats on “sized” . GL_OES_required_internalformat guarantee that it will correct.

glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA4, /other parameters/);

glRenderBufferStorage(GL_RENDERBUFFER, GL_RGBA4, width, heigth);

glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,4 /other parameters/);



But result doesn’t changed.

Also i try this application on Lenovo K900 (also PowerVR SGX544MP) and it’s work fine with all combinations.

Difference that i observe is result of glGetString(GL_VERSION)

on Samsung S4 - OpenGL ES 2.0 build 1.10@2209507

on Lenovo K900 - OpenGL ES 2.0 build 1.9@2284734



Could you help me with this problem? Or at least tell me which way to look.



Best regards,

Rahuba Youri.


#2

Hi Rahuba,



That sounds like a striding issue in the driver - the workaround will be to use the RGBA8 renderbuffer as you’ve discovered.



Would you either be able to send us an APK that shows this issue? Or a trace captured with PVRTrace? From that we can investigate where the problem lies and fix it. If you can provide one of those, please send it to mailto:DevTech@imgtec.com and I’ll take a look at it.



Regards,

Tobias



#3

Hi Rahuba,



So I did a bit of investigation and it appears that the issue is limited to only this device/driver revision. I tested on the Onda tablet we have in the office which has a slightly higher driver revision (1.10@2359475), as well as an in house test chip with a closer revision (1.10@2289024) - neither displayed the issue.



I would suggest that if you want to use the workaround as little as possible, you check for that specific device only, and with that specific driver revision (or anything below the 1.10@2359475 revision in the Onda). If Samsung choose to update the device’s drivers the problem should be fixed.



Regards,

Tobias


#4

Hi Todias!



Samsung S4 already have update to android 4.3 with driver revision 1.10@2359475 and one of our user install it, but problem not fixed.



Best regards!


#5

Hi ExMix,



In this case it means that the problem lies with the specific device rather than our drivers - there are a number of things that could be causing it, but I’m afraid we won’t be able to help with this. I’d suggest in this case you contact Samsung directly about the issue - their developer site is probably your best way to contact them: http://developer.samsung.com/home.do



Regards,

Tobias