register
Avatard Print E-mail

Jim Cameron’s Avatar is on everyone’s lips these days, as are countless articles on the CGI and performance capture technologies developed to awe-inspiring affect. I was particularly enamoured by the terrain and flora and fauna developed for Pandora. So yes, I decided to create my own little rocky universe, with lots of green luscious floating mounds and dramatic drop-offs, hanging vines, and whatever else I could pull off on my meagre budget. Personally, I think procedural generation of terrain is the way to go if you have a large complex terrain to work with. Some of you who regularly dwell in game development will recall Ryan Geiss’s Cascades demo back in 2008. Ryan, who at the time was employed at nVidia, developed a procedural model for a terrain, which he streamed out of a Geforce 8 graphics card using brute-force marching cubes on the GPU. The resulting geometry was rendered in real-time with tri-planar texturing, user-positioned waterfalls (really!), flying insects, and more. The only hitch was tweaking or changing the scalar field that defined the terrain surface. This was actually the reason I developed Acropora, to develop complex, organic terrain that I could export to a shader and stream out on a GPU card. Things kinda got more complicated after that.

argaiv1925

 

Anyway, back to the focus of this segment. I decided on creating a terrain with the vaulting cliffs, a deep canyon and some floating rock islands. First up, the base terrain. Using Acropora I started with a flat plane and applied the River/Canyon modifier. Adjusting the major and minor frequencies I opted for a single deep canyon. You can control the depth of the canyon by adjusting the strength of the modifier. Enabling the 3D surface property you get jutting overhangs and other interesting terrain. The 3D effect has its own strength property so you can tweak the amount of overhang you need.

 

Adjusting the seed property in the canyon/river modifier will generate a unique surface:

 

river_1  river_2 

river_3

 

Eventually I settled on the following:

 

story2_1

 

Here are the properties for the Canyon/River modifier:

 

story2_2 

 

The next stage involved creating the vaulting cliffs. This I did by instantiating a region over one side of the canyon and applying a Ridged Fractal modifier.

 

story2_3

 

NOTE: Use cloning of regions to create large swaths of cliff-like terrain.

In the end I added 3-4 regions, each containing a fractal (or badlands) modifier which when blended created interesting terrain.

 

story2_4 

 

Being satisfied with the base terrain I moved the mesh into the repository. In the repository meshes are no longer contained in voxel space. You can, at any time, reload the modifiers and reconstruct the surface. 

Creating the floating islands I took a different approach. I used both superimposed spheres and cubes as base surfaces. In the case of spheres I created 3-4 spheres, offset them (but remaining contact) and applied a fractal modifier.

 

story2_5

 

The resulting rock:

   

story2_6

 

Using a cube volume as base geometry coupled with a ridged fractal operator yielded the following:

 

story2_7

 

Putting it all together:

 

story2_8

 

Exporting to MAX, texturing, planting groves of palms and vines: 

 

rf_5  

 

Project files: rf_1.zip

 

 
Copyright © 2017 voxelogic.com. All rights reserved.