Android: Image Format BGR8 is unsupported

I’m trying to add a skybox to a mobile game. But I get this:

E/com.jme3.app.AndroidHarnessFragment( 2519): SEVERE Exception thrown in Thread[GLThread 2469,5,main]
E/com.jme3.app.AndroidHarnessFragment( 2519): com.jme3.renderer.RendererException: Image format 'BGR8' is unsupported by the video hardware.
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.opengl.TextureUtil.getImageFormatWithError(TextureUtil.java:101)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.opengl.TextureUtil.uploadTexture(TextureUtil.java:243)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.opengl.GLRenderer.updateTexImageData(GLRenderer.java:2194)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.opengl.GLRenderer.setTexture(GLRenderer.java:2250)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.material.Material.updateShaderMaterialParameters(Material.java:800)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.material.Material.render(Material.java:960)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.RenderManager.renderGeometry(RenderManager.java:616)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.queue.RenderQueue.renderGeometryList(RenderQueue.java:266)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.queue.RenderQueue.renderQueue(RenderQueue.java:308)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.RenderManager.renderViewPortQueues(RenderManager.java:876)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.RenderManager.flushQueue(RenderManager.java:781)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:1097)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.renderer.RenderManager.render(RenderManager.java:1145)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.app.SimpleApplication.update(SimpleApplication.java:253)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.app.AndroidHarnessFragment.update(AndroidHarnessFragment.java:577)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at com.jme3.system.android.OGLESContext.onDrawFrame(OGLESContext.java:336)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1583)
E/com.jme3.app.AndroidHarnessFragment( 2519): 	at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1286)

The skybox is divided into 6 images and they are in .jpg format. Just loading the scene with skybox causes no problem, but when I try to attach the scene to rootNode, that error happens.
Anyone knows how to fix or bypass this?

upping this, i also have the same problem. answer please…
edit: i got i., i use j3o before for skybox, now I created it though skyfactory instead. use png or if you want to use jpg, open jpg in gimp and re-export it with unchecked progressive in export option.

1 Like