Nextgen Space MMO Game - Procedural Galaxy with Billions of Stars - Seamless Planet Landing - Twitch Based, Skill Centered Gameplay - Own Ships, Buildings, Cities, Space Stations, and Even Planets - Sandbox Style Gameplay. You Decide How You Play, Not a Class System.

Report article RSS Feed Tech Demo Video 2010

It's been many years since the release of the last video showcasing the seamless planetary engine, so I'm happy to release this new video. This is actually a video of the game client, but since there's little gameplay in it, I decided to label it as a "tech demo". It demonstrates an Earth-like planet with a ring, seamless transitions, a little spaceship (the "Hornet" for those who remember, a space station and a couple of new effects.

Posted by InfinityDevs on May 5th, 2010

Making-of the video
Before I get into details of what's actually shown in the video, a few words about the making-of the video itself, which took more time than expected. What a pain! First of all, it took many hours to record the video, as each time I forgot to show something. In one case, the frame rate was really low and the heavy stress required to dump a 1280x720 HQ uncompressed video to the disk. The raw dataset is around 10 GB for 14 minutes of footage. 14 minutes? Yep, that video is pretty long. Quite boring too, which is to be expected since there's no action in it. But I hope you'll still find it interesting.

Once the video was recorded, I started the compression process. My initial goal was to upload a HQ version to YouTube and a .FLV for the video player embedded on the website. The second was quite easily done, but the quality after compression was pretty low. The bitrate is capped to 3600 kbps for some reason, and I didn't find a way to increase it. I suspect it's set to this value because it's the standard with flash videos. I also wanted to upload a HQ version to YouTube to save bandwidth on the main site, but so far it's been disappointing. I tried many times, each time YouTube refused to recognize the codec I used for the video (surprisingly, H264 isn't supported).

After a few attempts I finally found one that YouTube accepted, only to discover that the video was then rejected due to its length: YouTube has a policy to not accept videos that are more than 10 minutes long. What a waste of time. So instead I uploaded it to Dailymotion, but it's very low-res and blurry, which I cannot understand since the original resolution is 1280x720; maybe it needs many hours to post-processing, I don't know. There's also now a two parts HQ video uploaded to youtube: part 1 and part 2 . If you're interested in watching it, make sure you switch to full screen :).

Content of the video

The video is basically split in 3 parts:

1. Demonstration of a space station, modelled by WhiteDwarf and using textures from SpAce and Zidane888. Also shows a cockpit made by Zidane888 ( I'll come back on that very soon ) and the Hornet ( textured by Altfuture ).
2. Planetary approach and visit of the ring. Similar to what's already been demonstrated in 2007.
3. Seamless planetary landings.

I've been very hesitant in including the cockpit in the video, simply because of the expectations it could potentially generate. So you must understand that it's an experiment, and in no way guarantees that cockpits will be present for all ships in the game at release time. It's still a very nice feature, especially with the free look around. You will notice that you can still see the hull of your ship outside the canopy, which is excellent for immersion. Note that the cockpit isn't functional, so if we indeed integrate it to the game one day, I would like that all instruments display functional informations, that buttons light on/off, etc..


The backgrounds you see in the video ( starfield, nebula ) are dynamically generated and cached into a cube map. This means that if you were located in a different area of the galaxy, the background would be dynamically refreshed and show the galaxy from the correct point of view.

Each star/dot is a star system that will be explorable in game. In the video, as I fly to the asteroids ring, you will see that I click on a couple stars to show their information. The spectral class is in brackets, and follows is the star's name. At the moment, star names are using a unique code which is based on the star location in the galaxy. It is a triplet formed of lower/upper case characters and numbers, like q7Z-aH2-85n. This is the shortest representation that I could find that would uniquely identify a star. This name is then followed by the distance, in light-years ( "ly" ).

I still have to post a dev-journal about the procedural rendering of the galaxy on the client side, in which I'll come back on all the problems I've had, especially performance related.


I'm not totally happy with the look of the planet, so it is likely that in the future, I will at least do one more update of the planetary engine. There are various precision artifacts at ground level, as the heightmaps are generated on the GPU in a pixel shader ( so are limited to 32-bits of floating point precision ). I've also been forced to disable the clouds, which totally sucks as it totally changes the look & feel of a planet seen from space. The reason for that is that I implemented the Z-Buffer precision enchancement trick that I described in a previous dev journal, and it doesn't totally work as expected. With clouds, the clouds surface is horribly Z-fighting with the ground surface, which wasn't acceptable for a public video. At the moment, I use a 32-bits floating point Z-Buffer, reverse the depth test and swap the near/far clipping planes, which is supposed to maximize Z precision.. but something must have gone wrong in my implementation, as I see no difference with a standard 24-bits fixed point Z Buffer.

The terrain surface still lacks details ( vegetation, rocks, etc.. ). I still have to implement a good instancing system, along with an impostor system, to get an acceptable performance while maintening a high density of ground features.



Look & Feel
Don't think for one second that the "look & feel" of the camera and ship behavior is definitive in this video. I'm pretty happy with the internal view and the cockpit look, but the third-person camera still needs a lot of work. It theorically uses a non-rigid system, unlike the ICP, but it still needs a lot of improvements.

As you may notice, the ship's thrusters correctly fire depending on the forces acting on the ship, and the desired accelerations. Interestingly, at one given point in time, almost all thrusters are firing, but for different reasons. First, the thrusters that are facing the planet are continuously firing to counter-act the gravity. It is possible to power down the ship ( as seen at the end of the video ), in which case the thrusters stop to work. Secondly, many thrusters are firing to artifically simulate the drag generated by the auto-compensation of inertia. For example when you rotate your ship to the right, if you stop moving the mouse the rotation will stop after a while. This is done by firing all the thrusters that would generate a rotation to the left. Of course, some parameters must be fined tuned.

When the ship enters the atmosphere at a high velocity, there's a friction/burning effect done in shaders. It still lacks smoke particles and trails.

This video will also give you a first idea of how long it takes to land or take off from a planet. The dimensions and scales are realistic. Speed is limited at ground level for technical reasons, as higher speeds would make the procedural algorithms lag too much behind, generating unacceptable popping. At ground level, I believe you can fly at modern airplanes speeds. A consequence of this system is that if you want to fly to a far location on the planet, you first have to fly to low space orbit, then land again around your destination point.



Post comment Comments  (50 - 57 of 57)
awesomepossum May 8 2010 says:

Wow! This is just unbelievable. Truly pushing the limits of game development. I bet NASA wishes they had this technology.

+1 vote     reply to comment
Betelgeuze May 8 2010 replied:

Haha :D well I'm sure InfinityAdmin would love to trade his zero-budget game technology with NASA's multi-billion dollar space technology!

+1 vote     reply to comment
Triikor May 9 2010 says:

Wow I can only imagine how awesome Freespace or Homeworld would be using this engine...

+1 vote     reply to comment
Elratauru May 12 2010 says:

2 words: Freaking Amazing. The possibilities are just endless...

Keep the nice job! And I love all the tech/physic stuff you wrote, since its nice to understand all what you did/use for this!

+2 votes     reply to comment
Soulseker May 13 2010 says:

Omg I cant wait for that release in 2025 :(

though this is totally kickass, how long have you been developing this for now ? 5 years ?

+1 vote     reply to comment
Mavis130 May 23 2010 says:

Amazing video, just absolutely amazing.

I loved the atmospheric haze effect, just made my day.

Another thing I thought was great was how varied the planet was, as compared to games like Spore where each planet was a single color.

Keep it up!

+1 vote     reply to comment
R3bel Jun 28 2010 says:

W0W =O So deep atmosphere, incredible job.

+1 vote     reply to comment
Post a Comment
click to sign in

You are not logged in, your comment will be anonymous unless you join the community today (totally free - or sign in with your social account on the right) which we encourage all contributors to do.

2000 characters limit; HTML formatting and smileys are not supported - text only

Infinity: The Quest for Earth
Developer & Publisher
I-Novae Studios
Send Message
Official Page
Release Date
Game Watch
Track this game
Report Abuse
Report article
Related Games
Infinity: The Quest for Earth
Infinity: The Quest for Earth Single & Multiplayer Realistic Sim
Related Engines
I-Novae engine
I-Novae engine Commercial TBD
Related Groups
I-Novae Studios
I-Novae Studios Developer & Publisher with 2 members