Wednesday, January 30, 2008

The Importance of Atmosphere

Recently I was in a conversation with one of the companies who are interested in migrating away from the Active Worlds browser and to the superior Andromeda Media Universe. During the conversation, I had mentioned that we had gotten ahold of the mathematics involved for a computationally non-intensive real time volumetric cloud system (as shown in the media section) and that we were looking to implement this technique in order to provide a more compelling and realistic environment.

What came as a reply to this stunned me just long enough to pause before answering.

Essentially what was said was that they didn't understand the need for such a realistic cloud system in the grand scheme of things, and wondered why in fact we were putting so much effort for the smaller details.

The way I explained it was, that since Andromeda is modeled after a full universe, each "world" would truly be a spherical planet located in a 3D coordinate of space. By doing this, each planet would need atmospheric effects to increase it's realism and plausibility overall.

Part of the atmospherics is the inclusion of a volumetric clouds system so that when you are moving through the higher altitudes and into space you would not be passing through flat textures merely hung in the sky for the illusion of clouds, but instead you would pass through levels of volumetric clouds in a 3D space which were ultimately created using an optimized metaballs system of fluid dynamics.

Of course there exists in the sky manager for the planet the ability to set the axis, tilt and rotation of a planet as well as a planet size in order to tell the browser how to accurately represent the planet when seen. Along with that is also the Day|Night system of control since this process is a given and built in (whereas in an Active Worlds environment this process is crudely implemented through an externally running bot).

Furthermore, aside from the practicality of realistic volumetric clouds, there exists a nuance in the environment which is required in order to increase the immersion to the user. Realistic cloud cover is obviously one of those things that you take for granted in real life, but in a virtual worlds system shoddy cloud cover (flat textures scrolling across the sky or just a static skydome) really stand out like a sore thumb.

With this in mind, you can see up front how companies are thinking completely business minded with these technologies and completely ignore the need to improve them for the sake of the user and for a better overall experience.

A little bit of research will find that Linden Labs themselves are integrating a type of atmospheric system into their browser, but their approach is a bit weak. Instead of making a system from scratch where they could ultimately improve or create better ways to implement it, they have reached a turning point in their existence.

There comes a time in a technology company's life when they simply stop coding advancements and begin buying other companies that have already made them. While I am not against this, I do believe that this method of acquiring resources is a bit on the lazy side and severely stunts the advancement of the targeted field.

Sure, you can go ahead and just buy out another company in order to acquire their technology and integrate it with your own, but where is the adventure in that? Where is the quest to make something better in the process? You never know when one of your programmers may have an epiphany while coding it from scratch, and when you start buying technologies instead of making them, you are writing off that section of advancement.

Of course you can always have your coding team working on the source for what you just acquired, but ultimately they are working with somebody else's code and have to start blind. Then there is that pesky problem of not paying attention long enough to realize that since you are only adding to an existing 3rd party source, it is very possible that in the future you may have to outright scrap that section to use a new and improved version.

I have checked out the Windlight system and it looks good. I am also quite wary that it may be just a billboarding technique with a perlin noise animation. Either way I give both Linden Labs and Windlight kudos for their approach, though admittedly this approach is the last one we would have tried considering we're trying to implement a metaballs procedural clouds system.

I have the Windlight version of Secondlife on my desktop now as a preview version, and assuming it isn't horribly lagging or crashes, I will give it a shot to see how well it has been implemented.

Aside from this, I'll move on.

Another video in the media section (replacing the per pixel lighting video) is the video for the work in progress game "Infinity: The Search For Earth". This is an independent programming project done by a 3rd party which allows for seamless travel between space and a planetary surface, with very well done graphics and effects.

The reason this is posted in the media gallery is to give you an idea of what it's like to integrate the planet and the universe system through a seamless transition in order to create the illusion that the planet exists in a real 3D space which is arguably infinite in size.

This is more of a way to illustrate the difference between what it is like to be in a 3D environment which has a continuity between spaces and what it is like to be in an environment that is a flat planet and does not have seamless transition to space - in the latter I am referring to places like Second Life and Active Worlds. With Second Life, it doesn't matter how great the atmospherics look, there is arguably nothing above them at higher altitudes since the Second Life Grid is just a single planet. Even with the Active Worlds browser, there are multiple worlds but each world is isolated and kept to an alphabetical lit by name. There is no universe in any of the systems, except Andromeda.

It doesn't matter if AWI sells "Universe" servers. The name is only metaphorical in any sense of the meaning and does not mean there is a universe to contain the multiple planets which exist within it. I won't even start with Second Life because for all the power they tout, they only have a planet.

A Metaverse, in it's truest definition, is a combination of two words: Metadata and Universe. Metadata is just digital information while the word Universe means many worlds, galaxies, etc in an expanse of space. Second Life is not a Metaverse, but instead if they wish to be accurate are a MetaWorld. Active Worlds at best is a MetaGalaxy because they fail to have a navigational 3D Universe space to house the planets and galaxies.

Andromeda is being built as a real Metaverse. There will be a digital universe you can explore in 3D, and this universe will contain the planets, galaxies, stars and more. When it is launched, we hope the world will finally understand what a real Metaverse looks like, and stop calling the imposters by that prestigious name. Active Worlds deserves a MetaGalaxy name at best, and Linden Labs deserves MetaWorld at best.

Anyway, the Atmosphere video in the media gallery is included in order to show that such a thing is possible and not out of the realm of possibility to implement reasonably.

Thanks for reading, and check back often for updates!

Andromeda Media Universe Team


No comments:

Post a Comment