This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Mali400, lose 15ms if using a FBO

Note: This was originally posted on 29th July 2013 at http://forums.arm.com

Hello,

I am developing a game on a Galaxy S3 with a Mali 400 GPU

I noticed that as soon as I start to render my scene to a FBO, I lose 10 to 15ms in frame time when compared to directly rendering to screen....
I need a FBO in order to do some post processing, (so I want to use the content of the FBO as a source texture for a shader)

Here is what I do :
=> I use a 565 FBO, with a color attachment (I tried using or not a depth attachment, this changes nothing, depth precision is 16bits)
=> at each frame, I bind the FBO, then immediately clear it (color & depth)
=> then I render my 3D scene inside this fbo
=> after that I unbind the FBO, then draw a quad on screen with a ultra simple shader which task is only displaying the color attachment on screen, nothing else ...
=> then I draw my game's UI
=> finally I call eglSwapBuffers

So comparing FBO / not FBO there is a 10 to 15ms performance hit and this "hit" is most of the time coming from the eglSwapBuffer duration

Is that normal ? Any idea on how I could improve that ?

PS: What is even stranger is that if I start to use some more complex post processing code in the post processing shader, then I do not get much more performance hit ...

Thanks
Parents Reply Children
No data