JME3 RC2 running slower than JME3 Beta

Upgrading to RC2 seems to have dropped my FPS by ~5-6 frames on the app I’m currently working on. Anyone else seem their performance suffer after upgrading and have any idea why? The app has basic ambient/diffuse lighting, skeletal animation, and is using custom UI (built from quads and BitmapText).

5-6 frames out of what? It doesn’t mean anything if your fps is 1000 :slight_smile: Personally I haven’t noticed any slowdown but as you say, might be different use cases.

My guess would be animation is a bit slower due to some more solid handling in the later versions and the nifty gui is a bit faster, resulting in a bit of a loss, but its hard to say what exactly causes this. Also what @jmaasing said.

I have generally noticed a 30FPS increase, from about 160 to 190, in my app.

Screen with skeletal animation: fps went from 45 fps down to 38 fps

  • 3428 faces
  • 2078 verts
  • 42 bones (39 of these bones look to be affected by the animation, not sure how much that matters)



    Screen without skeletal animation but model covers more of screen + higher poly count: FPS went from 24 fps down to 18 fps
  • 7468 faces
  • 5992 verts



    The phone I’ve been testing on is the Droid Razr Maxx.



    What did you mean by “some more solid handling” for animations normen?
@cjuillard said:
What did you mean by "some more solid handling" for animations normen?

Effectively more data is written to the GPU per frame so theres less data mixup. But worry not, hardware skinning is not too far on the horizon ^^

The skinning code did not change so I don’t see why it would be slower now? Does the fps loss only occur when animations are playing?

@Momoko_Fan said:
The skinning code did not change so I don't see why it would be slower now? Does the fps loss only occur when animations are playing?

Sure it did from vanilla beta, I think that one didn't set the normals right.

The only thing I see is the change to check if the first vertex weight is 0 and in that case skip the bone, doubt that it would cause such a loss. Also 6000 verts per model is too much for Android.