. I'm not sure why, but it somehow thinks that your default config is wrong. But that's out of the scope of jPCT-AE. How you create the context is totally up to you. You might want to look at the HelloShader-example and see that runs on this device. If it does, just do what it does in your code.

I see...i'm using a custom shader in ES 2.0 mode for rendering the lines and i did the state management in a very naive way to get things working. It should be possible to improve this. I'll create myself a test case this evening and see if i can improve it.

Please re-download the jar. I've updated it with one that should be faster in both modes. The ES 2.0 mode still isn't as fast as the 1.0 mode, but on the Nexus S, it went up from 10fps to 40fps when drawing 501 lines. The performance drop comes from the additional overhead introduced by setting the shader's uniform for each line and sadly can't be reduced.

Egon, how it seems with support of post-processing effects? If I'm correct, it's render scene to texture, render plane with texture and fragment shader and display... I want depth of field (another project than I sent to you)

Fixed a bug in the texture matrix support of the OpenGL ES 2.0 renderer. Added the ShaderLocator class to allow for different shader locations. Added a method to SimpleVector to calculate a reflection vector. Added setRotationPivot() to Overlay. Added the option to use an alpha channel to the AAConfigChooser. Added a method to lock a mesh to Mesh. Added a method to Object3D to share texture data between objects. Fixed a flaw when trying to set non-existent uniforms and attributes in a shader.Fixed replacement shaders in GLSLShader. Serialized objects can now contain an octree. Object3D.clearRotation() now also resets the scale. Added compile(boolean)-method to Object3D for compatibility with desktop jPCT. Fixed a problem when deserializing objects with diffuse colors. jPCT now automatically detects the default thread, so there's usually no need to set it in World.Added an additional optimization to ellipsoid collision detection; setting collision detection to optimized now has an affect on ellipsoid collision detection. Added a calcAngleFast()-method to SimpleVector. Optimized compress() in Texture-class. Added a Virtualizer class to support swapping texture data to disk.Fixed a bug that screwed up textures when sharing meshes of objects that use multiple textures and were stripped. Reduced objects created by collision detection, shader support and fogging support. Fixed context recovering for animated objects. Fixed an inaccuracy in the Overlay when the camera matrix wasn't 100% orthogonal.Fixed a bug with not correctly managing states when using tangent verctors. Fixed a bug in the visibility detection for objects that consist of only one or two polygons. Fixed setOrientation() on scaled objects. Added the option to override the calculated distance of a light to an object. Fixed fogging when used in multiple worlds in one frame. Fixed a bug that occured when recovering the from a context change on a floating point VBO. Added basic support for primitive lines with the new Polyline-class. Deprecated Texture.enableGLClamping() and replaced it with Texture.setClamping(<boolean>). Fixed compression ratio calculation for zipped textures. Changed mip mapping default to true.Changed behaviour of animated objects that share compiled data. Now, the parent object doesn't have to touched to update the animation if a child has been animated. Added getProgram() to GLSLShader. Fixed behaviour of build() when used on models on which calcNormals() has been called before. Added support for setting a maximum number of lights for an Object3D.Serialized objects now include the name of the object. The rotation pivot will now be deserialized if it's part of the file. Fixed Loader.readTextureNames3DS to actually read texture names. Fixed loading of flawed .mtl-files. General performance improvements.

Sure! The engine has to keep texture and mesh data to be able to upload it again onto the gpu in case of an OpenGL context switch. By default, this happens in the VM's memory reducing free memory for the actual application. With the Virtualizer, you can swap this data to disk/card. Just create a Virtualizer, set the current Context and assign it to either the TextureManager or the Object3Ds in questions. For textures, you have to call TextureManager.virtualize(<Texture>); in addition. For Object3Ds, it happens automagically. jPCT-AE will then swap the memory to disk/card and reload it from there if needed.