BTW: If matrix multiplications are a performance problem, try to enable lazy transformations (Object3D.enableLazyTransformations()); whenever possible. Even if objects aren't really static but don't move within each frame, enable it and call touch() on the object once it actually moves. That might help to save a lot of matMuls depending on the scene.

I think i somehow mixed up profiler with debugger when writing this...

yeap, as i said you got yourself wrong

Quote from: EgonOlsen

Maybe because your game doesn't use many different textures?

i guess so. in that scene there are only 6 object textures + 6 blit textures

Quote from: EgonOlsen

BTW: If matrix multiplications are a performance problem, try to enable lazy transformations (Object3D.enableLazyTransformations()); whenever possible. Even if objects aren't really static but don't move within each frame, enable it and call touch() on the object once it actually moves. That might help to save a lot of matMuls depending on the scene.

i guess so. in that scene there are only 6 object textures + 6 blit textures

I see...i've around 15 object textures and 5 blit textures and it does help a little. Nothing to get crazy about though. Maybe i should start a rant about why OpenGL drivers seem to give a damn about their own state. Why is it always up to the application to keep track of states so that you don't enable something multiple times that already is enabled? OpenGL is a state based API. Shouldn't it be able to shortcut some calls if the current state makes them obsolete anyway...?

Another version, this time with working mipmapping even on 1.0/1.1 hybrid phones like my Galaxy and the G1. Some things has been added to support this:

There's a setting in Config called internalMipmapCreation, which defaults to false. That means that AE will try to figure out the "best" way to generate the mipmaps. If set to true, AE's own generation code will be used regardless of the GPU's/driver's capabilities.

There's a new static method in Texture called defaultToMipmapping. If called with true, each subsequent texture created will use mipmapping by default.

Uploaded a new version that puts the compile()-methods back in to ease porting from desktop jPCT. There's no need to call them directly in AE except when you want to use the same code with desktop jPCT.In addition, performance of rendering my small objects (like particles) has been improved a little.