Pls see the fps on my phone




My phone is huawei ideos x5 CPU IS 7230 1G GPU IS Adreno205,version is 2.3.5 ,it can play big 3d games but when i run this example of jme3-android ,the fps is very low on my phone ,so what’s the problem ?

Your phone supports OpenGL 2 but it would be worth checking out some of the resources in this thread. http://hub.jmonkeyengine.org/groups/android/forum/topic/does-my-phone-meet-the-requirements-necessary-to-run-jmonkeyengine-3/



Have you tried just creating a scene with a cube in the middle and moving around it. Your GPU doesn’t seem to be playing well with the textures

1 Like

Does it run faster with the skybox removed?

1 Like
@sbook said:
Your phone supports OpenGL 2 but it would be worth checking out some of the resources in this thread. http://hub.jmonkeyengine.org/groups/android/forum/topic/does-my-phone-meet-the-requirements-necessary-to-run-jmonkeyengine-3/

Have you tried just creating a scene with a cube in the middle and moving around it. Your GPU doesn't seem to be playing well with the textures

yes it played well with a cube or a sphere,but when i load a 3d model like helloanimation.java, the game is very lag again.
@Momoko_Fan said:
Does it run faster with the skybox removed?

yes it run faser ,but when i load the mesh.xml ,the game lag again. i study jpct-ae ,it support md2 model, it can run very faster on my device. so, may be JME3 should to be support md2 again like jme2.
i am a chinese,my english is very bad ..........

Wow, love to see our android-renderer is capabel to bring this to android! Very cool!

Don’t know much about jpct-ae. how is its water rendering working? Is it also lightning fast as their md2-animations?

1 Like
@logobaby said:
yes it run faser ,but when i load the mesh.xml ,the game lag again. i study jpct-ae ,it support md2 model, it can run very faster on my device. so, may be JME3 should to be support md2 again like jme2.
i am a chinese,my english is very bad ..........


The original format of the model shouldn't have much to do with performance, they all end up with the same, or similar, buffers in the end. If you're doing this kind of testing however, you owe it to yourself to make sure that the testing is consistent. Loading a mesh.xml of a ninja + a skybox + some water will be different than just loading an animation from md2. Try creating a single model and sending it to each format and then testing only that model..
1 Like

I suspect your device doesn’t support floating point. Can you find some specification page about the CPU in your phone?

1 Like

@logobaby: Can you upload the apk somewhere and give us the link? Actually I wonder if the water-shader is simply to expensive…!?

1 Like

Its just a skybox, the texture is probably too large.

loadmd2 by jpct-ae:

http://dl.dbank.com/c0bmxis8uw

this is my exercise of jpct-ae ,load a md2 model and you can rotate the model.





my cpu information is here:

http://pdadb.net/index.php?m=cpu&id=a7230&c=qualcomm_msm7230

HelloAnimation uses the Oto model which has 15000 vertices. You definitely aren’t supposed to use that model on a phone, it just won’t work.



jPCT-AE works because the engine itself has low system requirements, it supports the md2 model format which is from Quake, e.g. very old format.

This skybox texture is 1024 *1024 * 6, depending on the device it can be a lot too much.

Try to reduce the size of the textures to 512 or even 256. You won’t really notice any difference on a small device, except for the speed of course.

ok i see , the jpg and model are too large to my device. thx everybody .

最后用中文谢谢大家!希望你们看得到。呵呵。

is there a possibility to change my app resolution to be smaller than my screen resolution?

edit:

in android of course

@logobaby said:
最后用中文谢谢大家!希望你们看得到。呵呵。


que porra é essa?
@drabiu said:
is there a possibility to change my app resolution to be smaller than my screen resolution?
edit:
in android of course

There are some settings you can play with, in the androidManifest, not sure it does what you want though.
it's pure android though.
I use this so that the glsurface "fits" the device's screen resolution.
[xml]
<supports-screens
android:anyDensity="true"
android:xlargeScreens="true"
android:largeScreens="true"
android:smallScreens="true"
android:normalScreens="true"
/>
[/xml]
maybe by just setting small to true and the other to false you'll get what you want

I would recommend looking at this:

http://developer.android.com/guide/practices/screens_support.html



My Galaxy tab was having issues with get maximum resolution at app start up. I had to add the following to my AndroidManifest to fix the issue:



In your case, you can set the android:largestWidthLimitDp to something smaller to enforce working on all smaller devices.