Lets assume I have an object that consists of 70,000 triangles. Would the FPS be more when the object is idle or when the object is moving? Thanks
As usual with performance questions, the answer is "it depends."
We certainly wouldn't expect a moving object to be cheaper than a stationary one, so in most cases it's a safe bet that idle FPS will be at least as good as moving FPS.
So, what might make moving FPS lower?
- Physics calculations. In most physics engines, objects that aren't moving are put to "sleep," so they incur little to no calculation load. Waking them up might drop framerate, even if the object isn't pushing on anything else in the scene. This may apply to other gameplay calculations too.
- Animation. If the movement is due to a skinned, morph, or procedural animation, the calculations driving that animation have some cost.
Those are the most likely culprits if you're seeing a substantial drop.
I would not generally expect a moving object to incur a significant additional cost for rendering, unless:
- It's getting closer/moving out of occlusion (or revealing objects formerly occluded behind itself), meaning more pixels need to be shaded than before. This is a drop relative to the previous moment, but not a drop relative to the object remaining stationary in its new position/orientation.
- The movement of the object forces a change in the scene data structures - say, resorting a bunch of translucent geometry so it renders in the right order, switching Level of Detail, forcing a shadow map switch/resize, or updating occlusion information.
- Some effect in the scene does more work on moving objects - for instance, a trail renderer or motion blur that has to process more pixels when there's movement in the scene.
These should normally be small fluctuations - game rendering pipelines are built assuming objects will move a lot, so they're not too phased by most simple translations/rotations.