Interplanetary travel

Started by
3 comments, last by Drew_Benton 19 years, 2 months ago
Hi there. Could anyone point me in the direction of an article or document that deals with implementing a 3d universe with interplanetary travel. i'm having difficulty getting my head around how they impliment scale. In games like eve online, or i-war 2 for instance, are planets in a solar system spaced apart with real distances, or do they cheat and "bend" space depending on how fast you move (sub-light compared to warp-speed). Cheers
Advertisement
What you could to is create a fog when you get far away from the planet, then just as you cant see the planet you are moving away from you jump them to a part of the destination planet inside ITS fog layer, and keep the ship moving in the same direction with the same velocity.

Not too complex if you think about it ;)
__________Michael Dawson"IRC is just multiplayer notepad." - Reverend
Quote:Original post by JohnHurt
Hi there.

Could anyone point me in the direction of an article or document that deals with implementing a 3d universe with interplanetary travel. i'm having difficulty getting my head around how they impliment scale.

In games like eve online, or i-war 2 for instance, are planets in a solar system spaced apart with real distances, or do they cheat and "bend" space depending on how fast you move (sub-light compared to warp-speed).

Cheers


Think about this. If you had a big box, let's say something like the size of a room. It's dimensions are 10x10x10 feet. Now imagine if you were to break that big box into smaller boxes, such as 1x1x1 feet. You now have 1000 1'x1' boxes. Each one of those represents some 'sector' in the universe. You will only draw one sector at a time and have the conents of that 'sector' in memory. When you are changing sectors, you stream the data from HD into memory. This is the basics of your 'universe'.

Now it is just a matter of adding objects to your 'sectors'. You could even break it down more and make smaller boxes to represent how much is visible at one time. If you want to see a really good example of what you are talking about, take a look at the Freelancer demo by Microsoft. It is a great game that has some neat ideas for a space game.

One awesome thing it has is these things called trade gates, which are like space roads that allow you to fly faster through space like a higway. This is one thing that allows you to move fastly between the 'sectors'. If you do not use these, you have quite a flight ahead fo you [lol]. Other things that it has are jump holes, which warp you to a new sector in a different system as well as Jump Gates, which do the same.

These are just some over simplifications of this concept. There is a great article I'll see if I can dig up that talks about this. I think its on Gamustra. I'll have to get back to you on that.

- Drew

[edit]

Here are a few links: (You will have to freely register with them)

A Real-Time Procedural Universe, Part One: Generating Planetary Bodies

Part Two

Algorithms for an Infinite Universe

I could not find that one I was talking about showing an example of a real universe.

[Edited by - Drew_Benton on February 8, 2005 10:07:33 PM]
The problem i think i'm having is with the rendering of very large, very distant objects (planets, suns etc), now are these things rendered normally (i.e. you have a massive far-clipping plane), or as i suspect, are they drawn kind of like a sky-box (they move along with the player and appear static, but then when warp is engaged, they shift a bit).
Quote:Original post by JohnHurt
The problem i think i'm having is with the rendering of very large, very distant objects (planets, suns etc), now are these things rendered normally (i.e. you have a massive far-clipping plane), or as i suspect, are they drawn kind of like a sky-box (they move along with the player and appear static, but then when warp is engaged, they shift a bit).


Instead what you would use for what you are describing is "billboarding". Take a look at this tutorial to see how it will help you. Another info link is here. NeHe has one as well.

You could use that for the stars and such, to make them appear to be real, even though they are not. That is one direction you could take that. Of course you would do the billboarding base on the current viewport and not the standard 'always billboard' method. IE Im talking about if you are facing the sun, then you will have the billboard of it until you get withen a certain range. Then you will stop using billboarding and start drawing the 3D model.

If you think about it, this will work well. Since far off objects will always appear the same, you can 'fake' the 3D and make it use billboards. When you get close you will not longer use them, thus allowing you to get more detail and different views of the model. There is no need for sky boxes and you will not have to worry about warping.

This topic is closed to new replies.

Advertisement