Comment on page
How to plan and sculpt 3D terrain for level design; painting, planting
Honestly there's not much existing theory or documented knowledge about level design and landscapes. Environment artists tend to work at a small scale with limited portfolio piece scenes, while level designers focus on buildings. When you look for tutorials or guides on this topic, almost everything will focus on engine-specific sculpting tools and geological simulation tools -- and nothing about the actual act of designing the terrain. Our existing design theory has basically neglected the landscape, which feels foolish when so much modern shooter, open world, and multiplayer design happens in landscapes.
Unfortunately, real world landscape architecture provides only limited insight for level designers. The landscape architect must account for surrounding ecology, climate, hydrology, soil chemistry, archeological mitigation, land rights, building codes... these are interesting factors to consider for worldbuilding, but definitely out of scope when you're just trying to blockout some basic level geometry.
So in this section, we want to focus on design and function. We define landscape design in video game levels as the purposeful shaping of topography to aid desired player flow and experience goals.
Landscapes are made of rock, dirt, and sand, gradually worn down by wind or water (erosion).
When the tectonic plates along the Earth's crust interact, they often push rock upward (tectonic uplift) and form a variety of mountains. When warm air rises and pushes clouds toward the top of a mountain, the higher altitude and lower air pressure causes the clouds to rain. That rain water flows back down the mountain, forming rivers and valleys. That rain stays on the windward side of the mountain range, while the other downwind side (leeward) loses moisture to the hotter air and thus stays relatively dry and arid (rain shadow).
diagram of rain shadow effect, under CC-BY-SA 2.0 license from https://commons.wikimedia.org/wiki/File:Rain_shadow_effect.jpg
On taller mountain ranges, there is often a prominent tree line that marks where trees can no longer grow because it is too dry, cold, or windy. Above the tree line, the mountain rock is clearly exposed with occasional bushes / plants, or heavy snowpack in the winter.
To design a plausible naturalistic landscape, consider how various type(s) of rock, erosion, and climate will shape the terrain. Then consider how the local inhabitants responded to that terrain.
- Water flows downward and curves around obstacles. That means rivers curve a lot, which also means mountains and valleys curve a lot.
- ... so roads and paths should curve around as well, since humans must follow terrain. Straight flat highways and roads are relatively modern, and imply a powerful industrial society that can devote (or waste?) resources to grading roads.
- Vegetation holds dirt in place. Trees with deep roots are especially good at resisting erosion and blocking wind. Forests act as windbreaks, which means there can be different biomes on the windward / leeward side of a forest.
- Elevation changes affect wind and water patterns. If your level features mountains, should the biome be the same on both the windward / leeward
study of Gas Works Park in Seattle, USA by Catherine Dee in "Form and Fabric in Landscape Architecture", pg 23
People have been sculpting for thousands of years, so there's a lot of theory about how to sculpt, and it's a topic that deserves its own book. Here we're going to focus on the basics of sculpting as they relate to sculpting terrain in a game engine:
- Areas that feel too big, routes that feel too long or too annoying
- Blocked areas that shoudn't be blocked, unclimbable slopes that look climbable
- Game breakers where the player can get stuck or fall into a crevice
First, draw a layout to plan the landscape. Shade regions according to their theme and local climate. Label and highlight prominent areas. Your landscape layout drawing should be able to answer these questions:
- What are the biggest areas, which areas need to be next to each other?
- What is the theme of each area, and how does it relate to adjacent areas?
- What types of art assets will each area need?
In the example layout drawings below from World of Warcraft, note how the dev team began with a simple bubble diagram to begin solving the spatial relationships. As they spent months / year iterating on the level, the final landmass retained similar organization but resulted in very different sizes and shapes. The "Highmaul" area in the top-left roughly tripled in size, the flood plains halved, and the beach expanded into a harbor. Plan to deviate from your plan.
internal layout drawing vs. finished in-game map for Nagrand in World of Warcraft: Warlords of Draenor (https://www.mmo-champion.com/content/4457-Artcraft-Level-Design-Part-3)
Also note the clear regional color coding (brown = impassable mountain, yellow = arid, green = temperate, dark green = wet) and how it conveys the overall spatial hierarchy. The top-third is a wet area north of the river, the middle third is a temperate valley, and the bottom third is an arid mountain range.
Define the palette of big recurring shapes and objects common in this area (e.g. a house; a tree) and include their placeholders in the blockout.
"Working with an environment artist, the level designer will help to guide and define the scope of environment assets needed. These assets include terrain textures, trees, bushes, accent plants, rocks, etc. The range of models and textures needed must address not only the main zone look, but the sub environment types needed to break up the zone, all the while bringing the concept to life while remaining within the capabilities of our game engine. It can be a challenge, and often is.Take for example the new Nagrand. Not only do we have the environment that you know of as the Nagrand from Outland, but new areas, like a wetlands, and a higher elevation arid region. The visual clash of these disparate environmental themes could be quite jarring if not handled with care. There is a constant conversation between the level designer and the environment artist about shape language, color, diversity, scale, mood, model usage, and ultimately the visual tone of the zone as a whole that keeps the zone development moving in the right direction." -- Ely Cannon, senior level designer on World of Warcraft, from "Artcraft - Level Design part 3"
in-editor screenshots of Nagrand in World of Warcraft (from https://www.mmo-champion.com/content/4457-Artcraft-Level-Design-Part-3)
Now is a good time to think about balance... shallow slopes vs deep slopes, thin ledges vs thick ledges
Include generous space for landings at the top and bottom of ramps / stairs, or else players might overshoot and jump off a ledge
Is this walkable area readable, are the boundaries clear? Can the player survive a fall from __ height, can they walk up this __ degree slope?
Travel time, where is the nearest fast travel point
Refine shapes and overall composition and add some details (grass, plants, rocks). Is the silhouette, geology, and erosion pattern plausible or consistent? Work on lighting, mood, and color palette. Does each sub-region feel distinct and readable?
You should still be making big changes to the terrain btw, and each time you do, repeat step 2 and 3
Handpainting grass and flowers is time-consuming, and if you ever redo your art then you'll just have to paint everything all over again.
The most common method is to define biomes, thematic palettes of foliage and textures that automatically decorate a landscape. Then the terrain system can automatically decorate itself by procedurally generating the details.
Big AAA open world games invest a lot of in tools, scripting, and environment art to automate their landscape art passing workflows like this. It usually isn't practical to do this unless you're making a big project with a team.
screenshot from Halo Infinite (2021)'s internal level editor Shiva, showing a procedurally generated grasslands biome and the complex visual node graph scripting that powers the proc gen system; from "Halo Infinite - Tools - Terrain" by Mikael Nellfors
Use "set height" brush to layout floor planes and terraces
Your general sculpting workflow will be: (1) add or subtract mass, (2) smooth, (3) repeat forever
To define a slope, sculpt terraced "steps" and then smooth over. For narrow ledge ramps along the side of a mountain or canyon, a dedicated ramp tool is probably easier.
Don't oversmooth, don't leave everything a blobby melted mess... sharpen and crease, define shapes
For each region, start with 3-4 basic materials and shades.
Paint with consistency. Don't reuse a cliff material as a ground material.
Do the big basic flat sculpt first, then switch to increasingly smaller brushes to smooth over slopes and add minor height variations to the floor plane.
Avoid using erosion brushes for blockout... these can't do level design for you!! These are for detailing your level later in the design process
Plateaus are raised landforms with flat tops. Terraces are flat surfaces cut from a slope.
plateau studies by Catherine Dee from "Form and Fabric in Landscape Architecture", pg. 59
Craters are big deep holes in the landscape. Bowls are shallow holes in the landscape, and hollows are smaller bowls. Think of them as negative plateaus which can also be terraced. Descending into these surface depressions can offer a sense of safety, or perhaps a sense of being trapped.
In real-life, terraced bowls make for fantastic naturalistic amphitheaters that focus sound and provide a big comfortable gathering place. Conversely, a small hollow can offer a sense of closeness and intimacy. In games, bowls are most often deployed as artillery craters in battlefields to offer low shallow cover -- which, we suppose, is its own form of closeness and intimacy.
bowl and hollow studies by Catherine Dee from "Form and Fabric in Landscape Architecture", pg. 57
Combining a plateau with a crater produces a unique volcano-like effect that could also double as a sort of shelter or hideout (above, top-left)
screenshot from Legend of Zelda: Breath of the Wild developer talk at CEDEC 2017
Axial paths are straight, angular, and efficient, associated with human power and control.
Meandering paths are curved, round, and inefficient, associated with nature and leisure. pg 91
Paths respond to constraints:
- Users. Who made this path, and who is using this path today?
- Topography. Paths usually follow the curve of the landscape or shoreline. Cutting into the landscape or tunneling is a lot of work.
- Vegetation. Paths usually go around large trees or dense vegetation. Clearing land is a lot of work.
Sharply painted paths with hard materials imply maintenance. Disused / occasional paths with soft materials blur and dissolve.
avoid straight-forward flow, gradually give player a better view of a distant landmark, from a Nintendo developer talk at CEDEC 2017
TODO: Breath of the Wild "triangle composition"
TODO: find BotW screenshots that matches both diagrams
- Ledge paths are open on one side, closed on other. Common for hiking trails on mountains and canyons. Useful for suggesting scenic views, or offering a pleasant contrast between open view vs. closed enclosure.
- Cuttings are enclosed on both sides, usually "cut" through a landform or with retaining walls. It can feel safe and relaxing on a sunny day, or damp and mysterious on a cold dark night.
- Ridge paths are open on both sides and raised up. Common for big open wetland areas, offers a big sweeping exhilarating view if there's enough height.
- Switchbacks or zig zag paths go back and forth with periodic stopping places to control your pace. Not naturally occurring, but often used on steep hiking trails to make ascent (or descent) safer.
studies of various ledge paths by Catherine Dee from "Form and Fabric in Landscape Architecture", pg. 94
studies of various cuttings, shallow and deep, with varying enclosures, by Catherine Dee from "Form and Fabric in Landscape Architecture", pg. 95
studies of various ridge paths (in wetland and atop Hadrian's Wall, UK) by Catherine Dee from "Form and Fabric in Landscape Architecture", pg. 96
A landscape is more than the landmass and terrain, it's also about the overall climate, ecology, and vegetation. Landscape architects work heavily with gardening and plantings.
Every video game landscape is a garden, intentionally shaped to facilitate an aesthetic or mood. Video games expect us to suspend disbelief and pretend that diegetically, within the fiction of the game world, that these are untouched wild places. This is a fun lie we reserve for players, but as designers, we should never be taken in by our own lies.
Do research on your desired climate
An ecotone is a boundary where two different ecologies meet. It can be sharp or blurred.
Trees are basically walls that you can walk through; they enclose spaces through repetition and verticality.
drawing of semi-enclosed outdoor spaces with different vertical proportions by Catherine Dee from "Form and Fabric in Landscape Architecture", pgs 49-50
thin enclosure (french garden) vs thick enclosure (a glade in the middle of a forest)
Tree planting: natural or artificial? Artificial: quincunx, formalized forest (pg, 65)
Vary plantings by height
Complex planting: understand humidity, wind, rain shadows, etc
- Blockout: they made an early version of the island with simple geometric shapes and flat colors, allowing them to quickly iterate and test game systems / characters -- once they had a better idea of the game, they later redesigned and rebuilt the island entirely.
editor screenshot of an early blockout of the open world landscape in Alba; image by Jessie Van Aelst (from https://medium.com/@ustwogames/the-environment-art-of-alba-a-wildlife-adventure-6bddd8b56955)
the final fully-detailed landscape of Alba that shipped; screenshot by Jessie Van Aelst (from https://medium.com/@ustwogames/the-environment-art-of-alba-a-wildlife-adventure-6bddd8b56955)
For building up the landscape, ustwo developed a custom non-destructive terrain tool workflow in Unity.
For sculpting the main landscape topology, they used a custom Unity editor tool to place splines that procedurally painted onto the internal terrain heightmap at editor-time. This spline-based approach allows for a non-linear non-destructive workflow with smooth flowing shapes that they could fine-tune at will. A designer could also copy-and-paste large landmasses. And because each stroke is a separate game object, that also means multiple people could merge their landscape changes together relatively easily. (note from editor: I'm actually really impressed by this.)
Terrain splines have three brush modes: ridge (for hills and terraces), valley (for rivers and ponds), and level (for flattening / smoothing). The spline's stroke falloff is a user-adjustable AnimationCurve. It also has a built-in terracing curve, as well as a customizable noise modifier.
Each spline pushes / pulls the terrain in a certain way, and the accumulation of all these splines results in a complex landscape.
editor GIF -- using a custom Unity tool to define a GameObject spline that procedurally sculpts the terrain (from https://medium.com/@ustwogames/the-environment-art-of-alba-a-wildlife-adventure-6bddd8b56955)
For texturing, the landscape uses a basic four channel splat (RGBA). Each color (red, green, blue, alpha) corresponds to a texture type -- dirt, clay, grass, and sand. The triplanar terrain shader also applies extra masks for splat transitions, and sets different textures based on world position / world normal.
"For each splat, we had a ruleset. Sand would only appear on certain low heights of the terrain. Dirt would come in as the next layer in the height as well as appear on really flat and even surfaces. Then it would transition into Grass, almost all areas of the game are grass unless the incline was so drastic it would then turn into cliff splat material." "After this pass was done we added some more detail maps to each splat. This means the gradient transitions between splats would now have a bit more detail. These maps really helped with stretching the bandwidth of our limited amount of terrain splats." -- env artist Jessie Van Aelst, from "The Environment art of Alba: a Wildlife Adventure"
They also implemented extra "terrain stamps" overrides, editor-only game objects that could project a specific splat color onto the underlying terrain. This allowed them to add additional details and paint roads / paths, mask out foliage, etc. In the GIF below, note that the last frame consists of hand-placed details, on top of the procedurally generated base.
editor GIF showing different terrain rendering layers + set dressing passes (from https://medium.com/@ustwogames/the-environment-art-of-alba-a-wildlife-adventure-6bddd8b56955)
The team divided the island into several distinct biomes, each with their own plant and animal populations. Artists configured different biome elements for procedurally generated detail scattering / set dressing.
We defined each biome with biome elements. Ex: a pine tree forest biome would include pine trees, pine cones and bush biome elements. The biome elements all have variant slots as well as variables indicating how likely each asset would spawn and what the scale ranges would be.These biomes would then be placed onto the terrain in a similar fashion to the terrain manipulation. The marker would project cubes onto the terrain to indicate the area where it would generate a biome. The colour of these cubes would represent:Yellow — area where biome generation happens. Green — an asset will be generated here. Red — an asset could spawn here but won’t because of restrictions
editor GIF of a procedural generating plant spawner, note the yellow cube markers (from https://medium.com/@ustwogames/the-environment-art-of-alba-a-wildlife-adventure-6bddd8b56955)
These colours were very useful for us to understand what to expect before generating the terrain. A requirement we came up with was to be able to move around the biome markers and keep the compositions inside intact. For example, a clump of trees that was spawned in just the right composition would spawn in the same composition even if we moved this biome to the other side of the island.Biomes would generally overlap, so how do we make them work together? In order to overlap or put a biome inside another biome we worked out a system of prioritisation. The marker’s vertical position would therefore decide what would be overwritten.
- Figure out metrics early, especially for landscapes. In most terrain tools, it is difficult to shrink / expand / move different parts of the terrain after the initial sculpt. Moving a mountain is trickier than moving a wall.
- World of Warcraft: Level Design Panel (Blizzcon 2016) features 30 minutes of level designers Matt Sanders and Ely Cannon sculpting, painting, planting, and set dressing small mountainous island zones in Blizzard's internal map editor for World of Warcraft.
- The Fundamentals of Landscape Architecture by Tim Waterman
- Theory in Landscape Architecture: A Reader edited by Simon Swaffield
- The Planting Design Handbook by Nick Robinson