JavaScript EditorFree JavaScript Editor     Ajax Editor 

Main Page
Previous Page
Next Page

20.1. Features

RealWorldz was conceived to be a real-time demonstration of the state of the art in OpenGL shader technology, capabilities, and performance. Through the use of fractal algorithms and complex mathematics, dynamic and changeable world landscapes are compiled and computed at runtime almost entirely on the graphics card and displayed at interactive rates. Every frame that is displayed is calculated on-the-fly; nothing is prerendered.

This is not to say that RealWorldz does not use textures. On the contrary, textures provide the basic building blocks for many of the features available in RealWorldz: noise, sky color, atmospheric density, planetary texture, and much more. But these textures are quite basic by design and are used quite differently from traditional textures. It is up to programmable shading technology to transform and amplify the basic building blocks to the point that they become believable planetary landscapes.

Because these planetary landscapes are procedurally generated and rendered except for the textures used as the basis for the mathematics, no fixed data set or database is used to create them. Such databases would require terabytes of data to produce the same effect. Instead, all rendered features are generated according to mathematical models with adjustable parameters and initial conditions. Some of these parameters can be adjusted interactively through a graphical user interface. The planetary and terrain features include

  • Moving cloud layers with condensing and evaporating clouds

  • Ocean levels

  • Atmospheric density

  • Accurate sun halos and cloud light diffusion

  • Particles in valleys to produce perspective haze

  • Darkening and flattening of the landscape contrast with distance

  • Scattering of light in high atmosphere at the day/night terminator line

  • Caustic reflections in water

  • Plants with growth cycles

  • Navigability anywhere on the world

Previous Page
Next Page

JavaScript EditorAjax Editor     JavaScript Editor