Odd behaviour is on my side. I know this game would cause troubles on some devices.
The problem exists because I'm not using default jPCT texture load procedure. I will explain how this game works.
Texutre image is in "system" memory where I use Context to paint with spray, when this
is done I have to load texture into graphic memory, in onDraw, before objects are drawn i call:
GLES20.glActiveTexture(GLES10.GL_TEXTURE0);
GLES20.glBindTexture(GLES10.GL_TEXTURE_2D, myTextureId);
GLUtils.texSubImage2D(GLES10.GL_TEXTURE_2D, 0, 0, 0, wallBitmap);
after this sequence I do "normal" drawing:
frameBuffer.clear();
world.renderScene(frameBuffer);
world.draw(frameBuffer);
but wall objects have set render hook, and in beforeRendering() I execute sequence:
GLES10.glActiveTexture(GLES10.GL_TEXTURE0);
GLES10.glBindTexture(GLES10.GL_TEXTURE_2D, myTextureId);
if(_useGL20) {
shader.setUniform("textureUnit0", 0);
GLES10.glActiveTexture(GLES20.GL_TEXTURE1);
GLES10.glBindTexture(GLES20.GL_TEXTURE_2D, bumpTextureId);
shader.setUniform("textureUnit1", 1);
GLES10.glActiveTexture(GLES10.GL_TEXTURE0);
}
It works on emulator, and on other devices when I was testing it.
I know it is unusual way to use this engine, but this is the fastest way of load texture into opengl I know so far.