Hey there!
I’m building an Android app using the v3.1-alpha1 linux-x64 build of the jME SDK, and I noticed that I get the following stack trace as soon as I add a FadeFilter
to the FilterPostProcessor
(e.g. fpp.addFilter(new FadeFilter(1.5f));
):
W/dalvikvm(25598): threadid=11: thread exiting with uncaught exception (group=0x4162cce0)
E/com.jme3.app.AndroidHarnessFragment(25598): SEVERE Exception thrown in Thread[GLThread 9702,5,main]
E/com.jme3.app.AndroidHarnessFragment(25598): java.lang.IllegalStateException: Framebuffer object format is unsupported by the video hardware.
E/com.jme3.app.AndroidHarnessFragment(25598): at com.jme3.renderer.opengl.GLRenderer.checkFrameBufferError(GLRenderer.java:1340)
E/com.jme3.app.AndroidHarnessFragment(25598): at com.jme3.renderer.opengl.GLRenderer.updateFrameBuffer(GLRenderer.java:1488)
E/com.jme3.app.AndroidHarnessFragment(25598): at com.jme3.renderer.opengl.GLRenderer.setFrameBuffer(GLRenderer.java:1577)
E/com.jme3.app.AndroidHarnessFragment(25598): at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:1005)
E/com.jme3.app.AndroidHarnessFragment(25598): at com.jme3.renderer.RenderManager.render(RenderManager.java:1078)
E/com.jme3.app.AndroidHarnessFragment(25598): at com.jme3.app.SimpleApplication.update(SimpleApplication.java:260)
E/com.jme3.app.AndroidHarnessFragment(25598): at com.jme3.app.AndroidHarnessFragment.update(AndroidHarnessFragment.java:577)
E/com.jme3.app.AndroidHarnessFragment(25598): at com.jme3.system.android.OGLESContext.onDrawFrame(OGLESContext.java:336)
E/com.jme3.app.AndroidHarnessFragment(25598): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1525)
E/com.jme3.app.AndroidHarnessFragment(25598): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1242)
E/com.jme3.app.AndroidHarnessFragment(25598):
This happens on my Samsung Galaxy S4 running a JFLTE CyanogenMod nightly (20150524).
I found some older posts talking about similar stack traces (I had to segment the links due to the link limit of 2 per post for new users):
http:// Framebuffer object format is unsupported by the video hardware
http:// Framebuffer object format is unsupported by the video hardware
http:// Framebuffer object format not supported
As well as a related thread about 3089 on indieDB: http://www.indiedb.com/games/3089/forum/thread/crash-on-start-v0123b
Given that those threads lead to the suspicion of graphics drivers not supporting non-power-of-two textures, I’m guessing that there’s probably not too much I can do about this, and that the best option may be refraining from their use altogether since I can’t guarantee users’ phones will support it.
Thoughts?
Thanks,
Brandon