home about gallery publications education links contact


Creating such a scene can be both easy and difficult to produce. Easy with some terrains such as fields, vast open planes (etc) and more difficult with others such as areas with dense populations, woods, trees, rock formations and so on. All these need to be modelled, and if you’re going to be viewing the entire scene right to the horizon, then you’re going to have problems (especially if that unforgiving deadline is approaching!). To make your terrain look more realistic, it’s best to base it on an actual scene or photograph; these are some of the best references you can get apart from actually being there! Also, to get the exact detail of the surroundings, look into topographical maps of the area; something as detailed as a 1:25,000 or 1:50,000 map will suffice for this. Using these maps, an accurate representation of the terrain can be created by painstakingly recreating the map in your 2D paint package; drawing out field boundaries, contours for displacement of your mesh, roads and areas of population. This might sound like madness, but if it’s a faithful representation then detail is the key to realism (but don’t go too mad!).

With these generated maps (displacement, diffuse, bump, specular and any mix maps for rivers, streams, decals etc) we can take them into Max and assign them to a large Plane primitive that stretches off into the distance. With high iterations (or set to generate detail at render time), the plane will use the displacement map generated from the source map to create the hills and valleys of your landscape. Simple. Using the maps created for the diffuse (etc), assign them to the terrain, and you’re just about there! The terrain may require some extra displacement and refining to create finer detail such as rougher terrain, steep banks, hedgerows and so on. With so much detail in the viewport, it might be advisable to either Optimise or apply a MultiRes modifier (which may take an age to calculate due to mesh density) and collapse the mesh..

Once the terrain has been refined, we can add more detail such as trees, woods and populated areas by carefully postioning these items over the terrain which will take an age, or by using Scatter compound objects working on selected faces to distribute specific items on specific areas of the terrain’s surface.
Rendering off the scene, we can see the terrain stretch off into the distance, yet a sense of scale is still not apparent. By using a camera with a wide field of vision, such as a stock 28mm lens, we can get a better sense of proportion. Still it doesn’t seem quite right yet. Creating a simple skydome helps, but by observing real world environments, we can see that colours desaturate as they fade off into the distance. Environment fog helps here, and it is advisable to slightly tint the fog a similar colour to the horizon colour of your sky’s texture to nicely blur the horizon.

To finish off the image, we can add some clouds to the scene. A simple bitmap texture would normally suffice if we are viewing the scene from ground level, but as we are positioned at cloud level, we will have to create the clouds themselves. The clouds are created by using a Particle Array particle system that is distributed across a large Plane primitive that has been displaced using a Smoke map to create the irregular formation of the clouds. The particle system itself is assigned a simple material, virtually transparent as not to totally occlude the terrain when rendered. Add careful lighting (excluding certain geometry from specific lights, raytraced light to cast shadows on the ground from the main light source etc) and the scene is complete!
With such a high particle count, and the density of the terrain, our scene’s face count may fall into the millions, but careful optimisation of geometry and snapshotting of particle systems will reduce render times at the expense of larger max file sizes, which is pretty negligible.

Enlarge Screenshot The materials for the scene can all be generated from a single map obtained from a website or purchased over the counter. Creating these maps can be a time-consuming process, but the end result is worth more than simply applying procedural methods to the surface as the end result looks more realistic as it is based on a real-world terrain.
Enlarge Screenshot The base scene consists of a simple high polygon plane primitive. Add a Displace modifier to the plane’s stack and assign the displacement map to it. By amending the Strength spinner we can see the terrain deform to fit the displacement map. If you find updates in the Viewport are slow, then amend the Plane primitves iterations to a lower amount and increase the Density multiplier to a higher factor.
Enlarge Screenshot Next, refine the mesh by smoothing out any irregularities caused by the displacement, and add or collapse polygons to increase detail in specific areas to bring out more detail in the displacement procedure. Additional displacement maps can be used here in conjunction with Subdivision displacement that occurs at render time.
Enlarge Screenshot Add a simple hemisphere to the scene and assign a sky material to it. To add more realism to the render, add a camera with a wide field of vision such as the stock 28mm lens. Increase the Far Range spinner so that the environment range planes of the camera are placed well into the distance. Add Environment fog to the scene and check on Exponential. You may wish to tint the fog to the colour of the sky’s material to blend the sky and land together slightly.
Enlarge Screenshot To create the clouds, create another plane primitive with a high number of polygons that encompasses the scene. Add a displacement modifier to the plane and add a smoke map to the displacement modifier. By amending the strength spinner in conjunction with the size of the smoke map, you should see the plane deform to create an irregular-shaped surface. Create a Particle Array particle system and select the cloud plane as the distribution object. Hide the distribution plane to ensure it isn’t rendered (or un-check “renderable” in the object’s properties).
Enlarge Screenshot Crank up the number of particles so that the entire surface is covered, take the speed down to 0 and set the particle start time to, say, -50 to ensure the particles are already born at frame 0. Change the particle type to sphere, or use instanced geometry is desired. Increase the particle size so they are quite prominent and add a high size variation. Assign a near-transparent material to the scene with a falloff map in the opacity slot to remove any visible edges of the particles at render time.
Enlarge Screenshot … and the final image. The terrain map can still be seen while the clouds are prominent and occlude any horizon line or the edge of the terrain mesh.


Should you wish to texture your clouds so that some areas are more dense than others (ie darker), create a Mesher compound object and assign the particle system to it. You can then assign additional modifiers to the “particle system” and easily add UVW modifiers to it and then shade the clouds to your heart’s content!

To create holes in the cloud formation, apply a Volume select modifier to the particle system’s distribution plane object. Reposition the Gizmo so that only the peaks of the plane are selected and ensure Face sub-object selection is checked on. Back in the particle system check on Use Selected Sub-Objects and the particles will only emit from the selected faces. Alternatively, delete the unwanted faces from the distribution plane and check off Use Selected Sub-Objects in the particle system should you find updates are too slow.

Add detail to the terrain by using Subdivision Displacement. By using additional displacement maps in the object’s displacement section of the material assigned to the terrain, you can create simple yet effective detail at render time as not to impede your workflow when working in the viewport.

Although all well and good for most applications, Max’s particle system isn’t the best on the planet. Although it’s more challenging to try and achieve something that you would normally only get with a plugin, for complex cloud formations and volumetric smoke you may well be better off looking into plugins such as Afterburn or Pyrocluster for the volumetric effects.

Initially published: 3D World magazine, Issue 26, June 2002.

Copyright Pete Draper, June 2002. Reproduction without permission prohibited.