Origami day…

I had small rendering bugs all along because of my terrain LoD system. When ground tile’s resolution change, it’s almost impossible to match vertices in order to avoid gaps. I had tried so far half a dozen kind of different computations… But while “errors” were camera orientation dependent, I struggled to find a way which didn’t needed for more terrain updates.

So much work for so few pixels… but this issue is now over!

Improved scene manager

3 days (x12 hours…) of hard work… I’ve almost solved any lag while setting game’s configuration at its maximum on my laptop. Still a couple of residual bugs, but the harder is widely done…

I’ve implemented a system of “time budget” which can split any computation between frames when CPU is burning 😉 Former static geometries generation (i.e. Ogre::StaticGeometry::build()) of 420,000 vertex are now nearly unnoticeable on frame rate. This fucking bottleneck has vanished!

Nyne Terrain Manager is evenly compatible with Ogre’s shader object instancing. Since 2 faces impostors are more efficient in static geometry, my scene manager has been added the capability to switch smoothly between static/instanced depending on LOD distance. I haven’t tested yet FPS with shader instancing but it might rocks!

Paging & LOD

My first priority is to create a nice LoD/paging scene system. I’ve seen that Ogre has specific scene managers & plugins for this, but I’m rather sure I won’t find anything fitted for Nyne… or fitted with me. And even… I’d like to stay focus on a very basic Ogre environment. So I’m starting my own stuff. Well… I’m not really about to start running mindless in the dark… I had filled two notebooks in the past months to consider that kind of problems. But now I’m going to discover issues I haven’t predicted 🙂

The need for a paging system is obvious. Planets have to be huge sized. To be able to fit hundreds of city per planet, and a couple of kilometers between… so I mean HUGE.
– Each planet will be composed of 8,388,608 tiles (I won’t detail why)
– Each tile will be made of 1,600 vertex (at least)
– We’ve got… a minimal 13,421,772,800 vertex par planet.
– (and if you don’t know, we have 9 planets)
– Once for all, I do need a paging scene from hell!

And for the Level of Detail. I’d like to:
– have a quite deep background landscape, so vertex optimization
– be able to change vertex resolution depending on hardware

I don’t want neither the most beautiful, nor the most large length of view. I just NEED a huge planet and a kind of nice rendering.