Fps dropped

I don’t get it, It happened again.

I downloaded the nightly build. Installed it. And my fps dropped from around 600 to 120. Plus the stats looks very different with a Mesh() count. And the Triangle() and the Vertex() values are stuck even if there are no triangles in the window.

Meanwhile my webstart app works fine running with the jME from the http://www.jmonkeyengine.com/webstart/ directory.

Does anyone know whats going on?


Yeah, you are using a nightly build.

Or in other words, such a build is unstable and will have drops like that from time to time as new features go in and get refined.

There is still a valid point here I think of why did the fps drop?

If this has to do with changes to the development release are you aware of the problem already?


Allright, I get it now. I’ll download the latest release instead.


If there's no triangles in your view, and the stats tell you there's still something rendered, then either there's something wrong with your boundings, or the boundings are still in view (you can check that by turning on the displaying of boundings).

As for your drop in FPS, from which version did you upgrade? CVS or a release version or another nightly?

I checked with the displaying of bounds. And the triangle and vertex count is static, they display the same values at all times, no matter where I look. Its almost as if there is no bounding. I've had the same cvs release since I first downloaded jme some time in Oktober or November I think. Then today I updated the cvs, and this problem occurred. Then I downloaded the nightly build and installed it instead, same problem.

Now I have a new problem where MouseInputListener and KeyInputListener is missing from the 0.9 release. I guess they hadn't been made yet?

I found the cvs release I used before the upgrade on my computer and installed it. Now everything is back to normal.

Unfortunelety I started using JMEDesktop and it seems to be unfinished in this release. I suppose I’ll have to puzzle it together using bits and pieces from here and there.

The reason the webstart version works is probably because I included the jme I was using at the time in my own jar then I forgot to remove it. It probably overrides the classes in http://www.jmonkeyengine.com/webstart/

From the looks of it, it's only one mesh, right? So there should be only one bounding, if you don't see it when you zoom all the way out it's probably set up wrong or something.

Keep in mind that older releases weren't too accurate with calculating your FPS when it got into the higher ranges.

Now if there's supposed to be more than one mesh in that view, then there really is something going very wrong…

Well, there is supposed to be like 748 compositeMeshes

INFO: Child (Mesh748) attached to this node

It's strange that it works fine in the older version.

I do collision tests and recieve individual targetMeshes which should mean that there are more than one mesh right?

So you are saying that it's not accually 648 fps?

there is a different amount of triangles and vertices, so something is definitely different.

Hm I ran the most simple test for composite mesh (TestCompositeSphere) and it counts 0 meshes there too.

edit: That's because it currently just doesn't count them at all.

In your current well working 600+ fps version can you see (correct) boundings when you press B?

It seems to me like nothing is getting culled in with the latest CVS version, giving you this difference in framerate. (Though 600+ may or may not be completly accurate, it's still a lot more than 120)

Things are falling into place. I returned to the nightly build version and removed a JMEDesktop I had in the rootnode over the entire screen. This resulted in unlocking the static behaviour of the triangle and vertex counts + the mesh count became zero. This probably means that the JME desktop was the mesh being counted. And somehow it made nothing being culled.

The Image below shows some objects created through user input. the walls extends CompositeMesh, same as all the meshes in the entire “background world”. The white plates on the floor extends Quad. The mesh count increased only when I drew the Quad objects.

In your current well working 600+ fps version can you see (correct) boundings when you press B?

It looks normal to me. There is a bounding box around each node and a bounding box around each mesh, composite or not.

As for the mesh count, that's just a little bug and it's fixed in CVS now.

And if I understand correctly, you still don't see any boundings in the latest nightly or CVS? Does the tris or vertex count change at all if you move around in the scene? If it keeps changing then there's culling going on, so there should be boundings too then. If not, then there's still something wrong, and logically it'd be affecting your FPS too. In that case, it's best if you show us the code on how you set up boundings and such (you were writing your own maploader right?).

Accually, as I was trying to explain above, the boundings look normal (I don't think there ever was any problem with them).

The reason the triangle and vertex count froze appears to be related to the JMEDesktop I had.

After removing the JMEDesktop the triangle and vertex count are changing as expected. The only remaining problem is the fact that the fps count is still much lower. + there seems to be a problem with JMEDesktop.

Sounds like it is time to get out the old profiler :slight_smile:

This might be a new topic, but since it's related…

The jME version I'm currently using has great fps, but when I'm using the JMEDesktop, I can move things (scrollbars, windows etc) but I can't press buttons. They react on mouseover though. This works fine in the latest build. Can someone tell me what classes I need to get from the latest build to get this working.

Never mind, I replaced the whole com.jme.input package and now it works fine.