• entries
    232
  • comments
    1462
  • views
    956552

Optimizations

Sign in to follow this  
Ysaneya

175 views

Just a small update. I've more or less completed the optimizations this week end. I still have a few things to do, but that can wait. The framerate was around 75 fps at surface altitude, 2 weeks ago. It is now around 120 fps, a 60% improvement.

I'm now going to work on improving the quality (nasty texture seams), and adding detail textures.
Sign in to follow this  


4 Comments


Recommended Comments

Quote:
Just a small update. I've more or less completed the optimizations this week end. I still have a few things to do, but that can wait. The framerate was around 75 fps at surface altitude, 2 weeks ago. It is now around 120 fps, a 60% improvement.

Not bad for 2 weeks work - well done [grin]

Quote:
I'm now going to work on improving the quality (nasty texture seams), and adding detail textures.

So that means more pretty pictures to go "wow" at? it's been a whole 20 days since you last posted a screenshot in your journal [sad]

Jack

Share this comment


Link to comment
Hooah. That's quite an improvement.

Is there anything you can say about that exactly you changed? Where did you get those FPS from? Did you use better algorithms or did you optimize their implementation? Did you use your black voodoo skills?

Share this comment


Link to comment
I only drinked a potion that gives me +15 awesome programming skillz (too bad it has a -8 social life associated to it).

Seriously, it was just a matter of optimizing very unoptimized code. I have one object per terrain patch - that's a grand total of around 700 objects when the camera's at ground level. For each of these objects, there is a "technique" (which describes how to render this object: vertex format to use, shaders, parameters). Before, i was reattaching all the parameters for each object. But the truth is, a lot of these shader parameters are global, and not object-specific. The biggest change was to detect which parameters are global or local (object-specific), and sort the objects per technique, so that i can set up all their common states at once; then, for each object, i only have to set its specific parameters (2 or 3 vectors plus the camera space matrix in general). That's not a very original optimization i'm afraid, but one that i needed to do for quite a while..

It's interesting to note that i'm optimizing the framerate now, because it will become harder later when many bottlenecks will add up. The framerate will decrease again later, when i'll add detail textures, but also all the additional layers and effects (clouds, water, vegetation).. so it better be good now.

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now