Wanderer above the Sea of Fog

Geometry: Canvas. Material: Oil.

Descriptions on how some games do their landscape rendering. Games are listed by year released, geometry / material algorithm it use and some random detail about the landscape part of the game. Most of these are best guess on how it work and when i get more and better information i will update here. If you have worked on any games here and can share any details of how it worked message me on twitter :).


Carrier Command - Horizon line / Solid

    • Horizon line with dark blue water and light blue sky.

    • Some dots in water to make it possible to judge movement when over the open sea.

    • Islands are solid color rectangle polygons.


A-10 Tank Killer - Horizon line / Solid

    • Horizon line with solid color ground and gradient sky.

    • Polygon pyramid mountains.

    • Polygon roads and buildings.


Armour-Geddon - Horizon line / Solid

    • Solid color ground and sky plane.

    • Polygon pyramid mountains.

    • Polygon roads and buildings.


Magic Carpet - / Tile

    • Tile based material with each tile 32x32 pixels.

    • Each vertex is assigned one of the eight materials.

    • The four corners of a quad is used to pick a texture to use.


MechWarrior 2: 31st Century Combat - Horizon line / Solid

    • Horizon line with solid color ground and gradient sky.

    • Basic polygon mountain shapes.


Ultima IX

Drakan: Order of the Flame - / Tile

    • Multiple heightmaps of arbitrary dimensions

    • Heightmaps can be used as ceilings or floors. That way caves can be created.

    • Tiling texture sets


Operation Flashpoint: Cold War Crisis - / Tile

    • Heightmap of 256x256 size.

    • Each cell is 50 meters in size.

    • Each cell is textured by a tile texture.

    • Texture sizes are 128,256 or 512.

    • Base texture names are short keywords such as ex tg for grass.

    • Transition textures is split into four corners, lower left, lower right, upper left and upper right. The name of the transition textures give the basename for each corner in that order. So tgtgtsts would be a grass in the lower part that transit to sand.

    • Forest object are placed by half cell size in the cells and are made up of all the trees in there.


Battlefield 1942

    • Use a heightmap

    • Heightmap split into smaller parts.

    • One detail map is used over all the level.

    • http://glscene.sourceforge.net/oldsite/misc/bf1942/bf1942.htm

The Elder Scrolls III: Morrowind

    • Gameworld divided into cells 56x56 cells.

    • The cells go from -28,-28 in the lower left part of the map to 28,28 in the upper right.

    • Game keeps 3x3 cells surrounding the player loaded.

    • Each cell is 65x65 vertices. Each vertex is 2 meter apart so each cell is 128x128 meters.

    • The cell is made up of triangles so a total of 8192 (64x64x2) triangles in each cell. They are in the form of a triangle strip.

    • Lot's of FOG and no LOD that i can see (command twf). Triangle strip preserving LOD/T-Strip LOD ?

    • Console commands in game

      • Use console command coe x y to teleport around.

      • Use the command tg to show current grid in game.

      • tb to see cell borders.


Unreal Tournament 2004 - / Texture Splatting

    • Heightmaps

    • Broken up in smaller segments that is culled with portals.

    • No LOD on segments.

    • Layers of terrain textures where each contain a texture and a alpha mask on where to splat the texture on the terrain

World of warcraft

    • A wow map is divided into 64x64 tiles. Each tile is stored in it's own file for streaming. Each tile is about 500x500 meters in size.

    • The game keeps the 3x3 tiles centered around the player loaded.

    • A tile is split into 16x16 chunks. Each chunks is about 30x30 meters.

    • Each chunk is made up of 9x9 vertices and inside them 8x8 vertices.

    • Each chunk support high and low detail levels.

    • A chunk have a 64-bitflag that select what internal vertices are unused so holes are created in the terrain.

    • Each chunk can have use up to max four textures and use splat mapping.


Battlefield 2 - Static / Texture Splatting

    • Static geometry: Heightfields -> optimized mesh

    • Color map over whole terrain for low-frequency details

    • Up to six different detail textures on each 16x16 path for high-frequency details. Blended in at a given distance from the camera.

    • Detail map controlled by unique mask texture.


The Elder Scrolls IV: Oblivion

    • Gameworld split into cells that are 33x33 vertices in size.

    • 5x5 cells loaded around player and drawn at full detail.

    • Cells beyond that area is called the distant lands and only drawn if ative in the game options.

    • The LOD for all distant lands cells is in in the form of two triangles the cover the whole cell.

    • A single texture is used for all the distant lands.

    • When distant lands drawing is active all the LOD cells for it is drawn. The 25 where the player is at has it's height position pushed down so they go below the high detail cells.

    • Distant object option where things as trees or buildings are drawn LOD versions.

    • Distant trees as billboards


Quake Wars - Static / MegaTexture

    • Heightmap 2048x2048 converted to game mesh at around 32k triangles

    • The mesh is the gameplay area only. Around it out of bounds meshes are created for the non playable area. They can be reduced in polygon detail further out from the gameplay area.

    • The meshes are drawn directly with no LOD. The out of bounds meshes is culled by the camera only.

    • A megatexture is used on the terrain meshes.


Fallout 3 - Chunked LOD /

    • Gameworld split into cells that are 33x33 vertices in size.

    • 5x5 cells loaded around player and drawn at full detail.

    • Cells are merged into chunks for LOD.

    • Chunks are made to cover 4x4, 8x8, 16x16 and 32x32 cells.

    • In a world of 8x8 cells there will be 64 cells, four 4x4 chunks and one 8x8 chunk.

    • Texture?

    • Objects that can be seen from a distance is called WMD or visible while distant.

    • For each chunk a LOD objects mesh is created with the WMD's merged into it. All of them placed at the correct position, rotation.


Just Cause 2 - Geometry Clipmaps /

    • 32x32 km

    • Distant lights into vertex buffer and rendered as colored point-sprites. Split into grids for culling.

    • Landmarks are important objects that are visible as LOD version really far away.

    • For streaming world is split into 512x512 meter cells. 64x64 in total.

    • 8*8 cells around the camera is loaded.

    • Cell textures

      • Textures are made up of normal map and material indices and material weight textures. 4m/textel.

      • A tiled detail texture added also.

    • Cell heightmap

      • Each cell has a heightmap of 128x128.

      • The height map is used by the physics system.

    • Cell mesh

      • Geometry Clipmaps


Battlefield 3 - Geometrical Mip-Mapping / Shader Splatting

    • Quadtree culling with geomipmapping lod.

    • Each chunk 33x33 vertex.

    • High-res heightfield GPU textures. 16bits unsigned int. L16

    • Normals calculated in shader.

    • Height field based, mesh run time generated

    • Procedual shader splatting, arbitrary shader splatted according to painted masks

    • Spline and quad decals (roads)

    • Terrain decoration of meshes (trees, rocks, grass) according to mask

    • Rivers/lakes as floating decals. Water depth in shader.

Rage -

Skyrim - Chunked LOD /

    • World split into cells where each cell is 33x33 vertex in size or 58.5 meters.

    • An area of 5x5 cells is loaded around the player position.


Arma 3 -

    • Heightmaps

      • Arm 1: 2048x2048, 10m.

      • Arm 2: 2048x2048, 8m.

      • Arm 3: 4m.


Far Cry 4


Witcher 3 -