Help test jME3 on your android phone!

jME3 android support is getting better by the day! I added paletted textures, triangle strip generation, fixed-point conversion and many other optimizations to the core of the engine. Download the attached application file, upload it to your android device and try it out. Here’s a screenshot of what it should look like:









Please post the FPS you get, both at the camera position, and with the scene closer to the camera.on’t expect very great performance, this is still jME3, the same codebase that runs on the desktop, pretty much unaltered, so it will use more CPU than an engine specifically designed for android.



Controls:

WASD - Strafe and move forward/back

Touch screen - Rotate camera

I don't have an Android phone so I can't be much use, but I read the other night that Android apps are limited to something like <30 mb of footprint while older versions of the OS were sub 20 mb.



I'd be interested in hearing how much memory people are seeing this take up :slight_smile:

Okay I checked VM heap memory usage and I got 2.55 MB, hope this helps.

Apparently it runs at 45 fps on HTC Hero. Yay! Thats twice as fast as on the emulator, and jme3 isn't even designed to run fast on HTC Hero.

Momoko_Fan said:

Apparently it runs at 45 fps on HTC Hero. Yay! Thats twice as fast as on the emulator, and jme3 isn't even designed to run fast on HTC Hero.

Greak work momoko!
Momoko_Fan said:

Apparently it runs at 45 fps on HTC Hero. Yay! Thats twice as fast as on the emulator, and jme3 isn't even designed to run fast on HTC Hero.


Did you have a baseline hardware configuration that you were expecting?  My brother has the G1 (HTC Dream), but he's way up in Montreal.  He's coming home in a week or two, I'll have to give this a try then :D

Baseline configuration would be OpenGL ES 1.0 with no extensions. Actually two people have tested it now and there's one guy with HTC Magic and it shows the same fps as for the HTC Dream one (45 FPS).

I have between 36 and 62 frames on the Nexus One, even if I move it around like crazy, it stays over 50 frames. Peak was 71 frames.

But the balls are white, I don't see the monkey texture.

Maybe it's on the other side, but I cannot move around, there is no Keyboard on the N1 and the on-screen keyboard is disabled in the app.

omg I forgot to update it! please use this link:

http://www.jmonkeyengine.com/jme/jme3_2.apk

It was updated to follow the “spec” so the balls shouldn’t be white.  :)

Still untextured, no difference in frame rate, but i managed to get it to drop to 29 and to spike once to over 120.

Not really important, but there are also some strange things with the app itself, it is the only one I cannot get out of with the back button, can't get the keyboard up and it get's scrambled up, when the screen locks.

It would be easier to test on different Android Devices with WASD mapped to Trackball, I think every Android Device has Trackball or a nav pad.



But honestly, even the white balls are enough proof of concept for me, just seeing the monkey Logo on my phone makes me happy, you rock!  :D

Ouch! Alright that's that for palette textures  :x I spent so much time I can't believe they don't work.

The DPAD right now is mapped to keyboard arrow keys, which should rotate the camera.

I followed all the instructions while making the app, I guess I will make the back button kill the app.

Yes, but I don't have a keypad and the virtual one doesn't work/come up with the usual command ( press and hold Menu).

Edit: sorry, I misunderstood, the DPad mapping doesn't work on the Trackball.

Oh, by the way, did you know there's Open GL ES 2.0 hidden in the Nexus One?

http://forum.xda-developers.com/showthread.php?t=618201&page=6



Maybe that'll help you down the road with advanced texturing methods.

It's not really usable for commercial use (I think you need a rooted phone to acces some libs), but it should be useful for tinkering until it comes out officially ( i think, I'm too big of a noob to be sure).

my work colleage reports 47-62 ps on a motorola milestone 2.0.1

My battery is almost empty. I'm going to give it a try in a few hours on an upgraded HTC Dream with Android 1.5.

I have tried to download it but I get an error message. Can you put the APK file onto a FTP server and give me an explicit URL ended by ".apk" please?

http://www.jmonkeyengine.com/jme/jme3_2.apk

This is the one for this demo, the other one is not online yet.

Tested it on my HTC Hero (with custom MoDaCo 3.1 Rom). Works fine



25-60fps on initial position, average around 40-45fps



can't move around on the hero, no button seem to work. But I can move the view around using the touch screen. After pressing a few buttons it freezes. If I get to the lock screen it crashes after removing the lock screen again.



anyway, like it, good work :slight_smile:

I might have missed the link, but is the source code for this demo available yet?  I'd like to take a gander at how its put together :slight_smile:

ashtonv said:

I might have missed the link, but is the source code for this demo available yet?  I'd like to take a gander at how its put together :)

What do you mean? It's just jME3. The only special thing is the OpenGL ES renderer (which is very similar to the LWJGL renderer right now) and the input bindings, which essentially follow the same ways that the android tutorials show. There's a class AndroidHarness which loads the application class you specify into an Activity.
Momoko_Fan said:

ashtonv said:

I might have missed the link, but is the source code for this demo available yet?  I'd like to take a gander at how its put together :)

What do you mean? It's just jME3. The only special thing is the OpenGL ES renderer (which is very similar to the LWJGL renderer right now) and the input bindings, which essentially follow the same ways that the android tutorials show. There's a class AndroidHarness which loads the application class you specify into an Activity.


What do I mean?  I mean what does the entire Android project look like and how does jME3 get "bootstrapped" within it.  I'm not so much interested in the jME3 code itself except where it overlaps or interacts with Android.