I'm no veteran Ogre Coder by any means, I've only been working with Ogre for around 3-6 months now, so you can see, If you
put some time in, Ogre has allot to offer the startup coder. It took me a little while to get my head around Ogre, but now I'm realy
liking it, I'm still finding things in the API that I didn't know was in there, and those things make some of my old code redundant,
but I don't mind, I sort of like it, seeing how someone else implements a similar process, sometimes it's better, and sometimes not.
Anyway, allot of my inspiration for this addon came from Sean O'neil's work also, I liked his old ROAMing spherical mapping system and
based some of my system on his concepts, obviously his engine was a concept only approach, so it didn't have all the niceties,
but his implementation was sound. (Thanks for the concept Sean).
As for the scaling down of movement speed, all I do is take the distance to surface and ... well here is the call
Code: Select all
this->mscaleFactor = Clamp(0.6f,1000.0f,newPlanet->GetAltitude() * 0.01f);
I know it's not pretty but for the demos' purposes it works, this gives me a speed of around 100km per second in outer space
and when in the atmosphere it starts scaling down the speed to about 60 meters per second on the ground. I can of course make this
more to scale, but when I'm checking how the new Paging systems' seams are working, and the Hybrid DEM terrain system is shaping up,
could you imagine traversing a large part of the surface at real walking pace (not much fun), even at 60 mps it get's tedious.
As for the objects (buildings etc) the paging system takes care of that for me, each page has it's own mini Scene Manager as such,
all you do is plug in terrain layers, terrain Physics mesh, static objects, movable objects or pretty much anything you like, and those
objects have their own lod / distance to camera handling routines. What I'm trying to do is make this system as generic as possible,
so that users like yourself can still use routines and methods that you are use too, Last thing I want to do is make this thing change
the way you think about coding, I want this thing to be used by you guys, so it has to just plug in and go.
hope this helps,
Alex