Arm Community
Site
Search
User
Site
Search
User
Support forums
Mobile, Graphics, and Gaming forum
FBO doesn't work?
Jump...
Cancel
Locked
Locked
Replies
4 replies
Subscribers
137 subscribers
Views
4410 views
Users
0 members are here
Mali-GPU
Mali-400
Options
Share
More actions
Cancel
Related
How was your experience today?
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
FBO doesn't work?
Christopher Van Kirk
over 12 years ago
Note: This was originally posted on 12th September 2011 at
http://forums.arm.com
Sorry, this is a repost of a question I added to someone else's thread. It's a similar issue, but went unanswered. I kind of need to get an answer on this:
I create the FBO, bind it to a texture, check the status to make sure it's framebuffer complete, then set it to the rendering buffer, and call DrawElements. DrawElements fails with "GL_INVALID_FRAMEBUFFER_OPERATION" error. This is a bit of a mystery since I check the completeness status on the line immediately prior to the draw call and it claims to be framebuffer complete.
Do the settings on the texture object matter, e.g. repeat/linear/reflect. Does Mali require me to specify a depth or stencil buffer? Does it require an alpha channel?
This code works on Tegra2 and Adreno 205. Not sure why Mali doesn't like it.
Cheers!
Edit: Added example Android code that doesn't work as it should on the SGS2.
Parents
Pete
over 12 years ago
Note: This was originally posted on 19th September 2011 at
http://forums.arm.com
Hiya,
I've started to look into the APK on a Samsung Galaxy SII. It was forced to close so I looked at the logcat output and was able to see the shader was failing to compile. This is because the shader programs normalmap_ps.txt and normalmap_vs.txt attempt to overload the dot() function. Since this is a built-in function in
ESSL
, the compiler throws an error. I fixed this by removing the overloaded function to let the progam use the built-in.
The next error is a problem with glDrawElements(), and it seems the application is trying to pass a type of GL_UNSIGNED_INT, when the
spec
clearly states that only byte and short are permitted.
I've fixed those two issues and now there's no crash, but I still only see a black screen. I will continue to investigate, as I have my own NDK FBO example which works fine and there's no reason this shouldn't work if the API is used correctly.
Cheers, Pete
Cancel
Vote up
0
Vote down
Cancel
Reply
Pete
over 12 years ago
Note: This was originally posted on 19th September 2011 at
http://forums.arm.com
Hiya,
I've started to look into the APK on a Samsung Galaxy SII. It was forced to close so I looked at the logcat output and was able to see the shader was failing to compile. This is because the shader programs normalmap_ps.txt and normalmap_vs.txt attempt to overload the dot() function. Since this is a built-in function in
ESSL
, the compiler throws an error. I fixed this by removing the overloaded function to let the progam use the built-in.
The next error is a problem with glDrawElements(), and it seems the application is trying to pass a type of GL_UNSIGNED_INT, when the
spec
clearly states that only byte and short are permitted.
I've fixed those two issues and now there's no crash, but I still only see a black screen. I will continue to investigate, as I have my own NDK FBO example which works fine and there's no reason this shouldn't work if the API is used correctly.
Cheers, Pete
Cancel
Vote up
0
Vote down
Cancel
Children
No data