Blender - a simple terrain from heightmap
February 17, 2008, by Tapir.Required Software
For this tutorial you will need the modeling package Blender and a heightmap. You can create heightmaps using EarthSculptor or World Machine. The process of creating heightmaps is not explained in this tutorial. To export your model to ASE you will also need the Goofos ASE Exporter.
Create Grid
Now that we have the required software installed, let's start Blender. You'll see the default object, a grey/purple square. Press the delete key to delete it.

Press the space bar and select Add -> Mesh -> Grid. The Add Grid window will appear. Create a 128x128 grid (or 64x64) and click OK.

Loading the heightmap
Press F5. In the Links and Pipeline tab click Add New. Now press F6 to open the texturing screen. Click Add New in the Texture tab. Now select texture type image from the texture type dropdown list and load your heightmap using the Load button.
Now press TAB to switch to Object mode and F9 to get the Editing toolbar buttons back. In the Modifiers tab, click Add Modifier and add a Displace modifier. In the Texture field fill in the Blender name of the texture you added. If you have loaded one texture the default name will usually be Tex.001. You can play around with the Strength and Midlevel variables to influence the size/height of your terrain model. You may also want to add a Smooth modifier to smooth out the rough edges of your terrain.
Another way to transform your texture into terrain is to use the noise button instead of adding a Displace modifier. Make sure you're in Edit mode (not object mode) and press F9 to enable the Editing toolbar buttons. In the Mesh Tools tab, click the noise button a couple of times (10-15 usually). You'll see your terrain take shape.
UV-Mapping the terrain
We're almost done, we just need to UV-map and scale the terrain before it can be used ingame. Make sure you're in the top view by pressing numpad-7. Move your mouse to the edge of the 3D-view area until the cursor turns into the double-mouse icon. When it does, right click and select Split Area. Click again to split the area in two.
In the left window switch to UV Face Select mode and change the right window to UV/Image Editor. Load your heightmap in the UV/Image Editor by clicking the Image->Open button. Next move your mouse over the left area and press u. Select Project from View (Bounds). Move your mouse to the line dividing the two areas and right click, Join Areas. Point the arrow over the right area and left-click to join the two windows. Your terrain is now UV-mapped.
Scale the terrain
Our terrain has to be scaled to the right size before we can import it in ETQW. We could import it the way it is now, but it'd be very tiny and not that useful.
In the main window select View->View Properties. Change the values so they are like in the screenshot. Press enter to confirm and apply after you change a value.
Make sure you're in Object Mode (press tab if you are not) and press N. The Transform Properties window will now appear. This is where you change the actual size of your model. We're using 16384 for our terrain, but you can use 32768 if you want your terrain to be bigger. Make sure the Link Scale button is dark green, change the DimX of your model and press enter. The other values will have changed as well.

Triangulate
The ETQW map editor does not accept quads in terrain models, everything has to consist of triangles. Change to Edit Mode (tab) and make sure your model is selected. Press space and select Edit->Face->Convert to Triangles to convert your model to triangles.
Export the terrain
In the top left, select File->Export->ASCII Scene (.ase) to export the model. You can also export to Wavefront (.obj) if you really want to, but we recommend using .ase.










Comments
There are 0 comments for this article.
You must be logged in to post comments.