Max number of models you can have for performance issues

I am trying to find different ways to improve performance.



I can have anywhere from 20 to 2000 models in the view at one time. The are all being moved and animated individually so its not something that can be done in 3ds max and loaded as a scene.



I have reduced the poly count on the models to about 200 and that helped some with the fps.



Currently with about 500, 200 poly models in the scene I run at about 9 FPS.



Is there a way to improve or optimize this that I might be missing?



Thank you for your time.

That’s about the best you can do because the data needs to be constantly uploaded to the GPU on each update. It would be quicker, for example to have 1 model with 100000 triangles as opposed to 500 models with 200 triangles.



I’d highly suggest taking a look at BatchNode, however, as this is precisely the sort of thing for which it is so great :slight_smile: http://hub.jmonkeyengine.org/javadoc/com/jme3/scene/BatchNode.html

1 Like

My Card is a Radeon HD 3670 and the capabilities are listed below.



Graphics Card Capabilities:

FrameBuffer

FrameBufferMRT

FrameBufferMultisample

TextureMultisample

OpenGL20

OpenGL21

OpenGL30

OpenGL31

OpenGL32

ARBprogram

GLSL100

GLSL110

GLSL120

GLSL130

GLSL140

GLSL150

VertexTextureFetch

TextureArray

TextureBuffer

FloatTexture

FloatColorBuffer

FloatDepthBuffer

PackedFloatTexture

SharedExponentTexture

PackedFloatColorBuffer

TextureCompressionLATC

NonPowerOfTwoTextures

MeshInstancing

VertexBufferArray

Thank you I will look into BatchNode.

hold on, are they bone animated models?

If it’s the case BatchNode won’t work.



If they are just moving objects then BatchNode is the way to go

@sbook , thanks for explaining the BatchNode!

They are bone animated models. Is there something else that I can do?

@nehon, @sbook



Is there any other way to optimize bone animation models or reduce gpu overhead for those models?

I am using one similar to the ninja sample that is included in the test data.

There is no built in solution to your problem i’m afraid.

@nehon Thank you for the confirmation.



Is there any built solution for swapping different models during running a game.



I am trying to find a solution to create a manual LOD using 3 different models.