jPCT-AE - an Android port of jPCT

I finally managed to upload an alpha version of it and created a very simple, ugly website for it: http://www.jpct.net/jpct-ae/.
The demo works fine on the Samsung I7500, i have no idea how it works on other phones. Any feedback is appreciated.

Wow, awesome work!

Kev

I’m going to give it a try on my mobile phone, HTC Dream G1 upgraded to Android 1.5. Thanks.

Edit.: ok between 13 and 27 FPS with the first demo.

A little, blurry video showing raft’s skeletal animation stuff running using jPCT-AE on an actual phone: http://www.youtube.com/watch?v=QP4LoJ-87vY

Hmmm. I wonder what would happen if I added jPCT to my Game Dev Kit like I did jMonkeyEngine.

Very nice.

What is this 1 fps? IMO trying to get skeletal animation on phone is useless, unless you’re using a powerhorse like the motorola droid with support for hardware skinning and such. Time to go back to md3 models lol XD

It runs @ around 8 fps on my Samsung i7500 with animations and close to 30 fps without.

Few years ago it was useless getting 3D working on a phone, before that it was dumb trying to get games working on a phone at all. Things move very quickly, nice to be prepared.

Kev

I suppose it is, but if you’re trying to get it to run on HTC Hero or anything like that, running a complex computation on many verticies is a killer, especially in interpreted Java. For my engine, you would probably need to have some models be vertex animation based while for high-end devices with hardware skinning you would use skeletal animation.

Granted, Dalvik is slow. It’s so slow, that it really hurts the whole platform IMHO…but there’s a JIT to come for example and even if it would only double performance, that animation will run on a Hero (given that there is a possibility to upgrade…) or similar @ around 15+ fps, which is ok for a lot of applications. And you don’t have to use it, you can use key framed animations as well. It was just an example and not even written by myself… :wink:

I had very good performance with using the MD2 format with Dalvik. Granted, doing the vertex interpolations in native code is a lot faster but for not so complex scenes it works in pure Java pretty well. You can find a video of that at http://www.youtube.com/watch?v=WIQ9mX5vKgQ&feature=player_embedded. If you want the source i put up a small svn repository on google code that hosts a couple of classes that might make it easier to start game programming on Android. This includes the source for the MD2 loader and renderer. You can find it at http://code.google.com/p/android-gamedev/

jPCT-AE already supports loading and animation of MD2 models… :wink:

whoops, should have looked up jPCT :slight_smile: Maybe this is interesting for jPCT-AE http://code.google.com/p/gl2-android/. It’s the Java native bindings for OpenGL ES 2.0 for Android. Not rocket science of course but might reduce some of your work. The official bindings will come with the next Android release called Froyo. A Google engineer i corresponded with about my bindings said that they are future proof and changing from mine to the official ones should be minimal work.

Why don’t they try to use JOGL 2 instead? It already supports OpenGL ES and OpenGL.

I’ve uploaded a new version of the engine and the demo. It now works fine on Nexus One and Samsung Spica too.

Uploaded a new jar, which improves skeletal animation performance of that ninja demo from 8 to 18 fps on my Samsung i7500.