EA official tutorials:
Terrain editor
Custom Mod Setup
Understanding Heightmaps
Build the Bunker - 3ds Max
Build the Bunker - Maya
Import the Bunker
Build the Car - Maya
Import the Car
Create new team - Maya
Create new team - 3ds Max
Create new kits - Maya and Max

Mapping - General
Setup FH2/bf2editor
FH2 mapping guide
FH2 mapping standards

Mapping - Texturing
Texture system in bf2
Terragen skies
Terragen texturing

Mapping - Heightmaps
World Machine
Geocontrol and bf2hmt

Mapping - Lightmapping
Simple lightmap setup

Mapping - Downloads
Sky settings bf2
Water settings bf2
Lowdetailtextures/settings bf2

3D modelling/texturing
Skinning the Daimler Dingo


Create bf2 heightmaps with Geocontrol and BF2HMT

By Fenring and some contributions by Lobo

Before reading this, the basic EA/DICE introduction to heightfields could be a good read.

Download Geocontrol
Download BF2 HeightMap Tool
Download bf2 grids for geocontrol

(Terrain generated/sculpted with Geocontrol 2 in DICE newest BF game Battlefield: Bad Company)

This tuorial doesnt explain in detail how to use geocontrol but rather how to adopt geocontrol for bf2 use, but geocontrol is relatively simple and has good help functions and presets.

One of the major disadvantages when using World Machine and really large heightfields (2048x2048+) is the high memory consumption/speed of filters and the relative lack of "painted/exact" control over the landscape. The surrouding terrain in bf2 is great in that way it can be modeled according to the rest of your map with shadows and everything and therfore more realistic (not like in BF42 where is just the heightmap repeated). If we want to create the surrounding terrain also the minimum heightfield size is 1024x1024 for the smallest map size. These are the sizes you need to work with in landscape generators in general to create entire terrain including your surrounding (mapsize *4):

256 any scale: 1024x1024
512 any scale: 2048x2048
1024 any scale: 4096x4096

When working with bf2hmt to export to bf2 you need to resize this to your mapsize+1*3 (example 1025*3 = 3075)
1024 = 3075x3075
512 = 1539x1539
256 = 771x771

Example image 1024 map size:

1025 for the main heightmap and other two 1025 for both sides in both axes for the surrounding terrain. These are croped and scaled down for the game in bf2hmt.

Now with this theoretic part over lets start up geocontrol. Load up one of the grids accoding to the map size your going to create, i suggest starting of with a 256 size map (1024x1024), faster to work with and faster to learn before tackling the bigger map sizes. Geocontrol is very memory friendly, even 4096 size can be used with as little as 512mb ram, but you do need a fast CPU to get decent speeds when sculpting the terrain with high demanding filters like erosion.

As you can see the grid separetes the surrounding terrain from the playable area directly in geocontrol. Use the zoom button to just work with your playable area

Now we export, I just do "Normalize" and export as .raw , ill just save mine in "My Documents" as test.raw.

Open it up in Photoshop with these values for raw import:

and resize to the figures shown in theory:
1025 = 4096x4096 resize to 3075x3075
512 = 2048x2048 resize to 1539x1539
256 = 1024x1024 resize to 771x771

Ill resize mine to 771x771 (Image - Image Size)

Save always in TIFF format, we save as test.tiff with standard options.

If you havent done this already create a basic 256 level in bf2editor:

Now lets open this file in bf2hmt:


After some BF2_tpaint we have a complete basic map with surrounding terrain in like 5 minutes!

There will always be some stitching problems with the surrounding and main terrain so keep that in mind when designing your maps.

To texture your primary terrain in terragen just import the heightmapprimary.raw in geocontrol and save as .ter and open in terragen. Simple as that!

Also remember that bf2hmt can be used in the same way with any other landscape generator or photoshop.


Heres a screenshot of geocontrol terrain lightmapped and colortextured in Terragen and detailmap in bf2_tpaint. Notice the scale of things when the small veichle is a Panzer II!