Terrain Transitions

Started by
0 comments, last by arcangelg 22 years, 5 months ago
Hi everybody, I am working on my own isometric engine. Now, I am trying with the terrain transitions, I will use 16 tiles for each terrain transition (ie Grass to Dirt, Dirt to Water) When I create a new map (with my editor) I put the selected terrain tile (grass, water, dirt) but I need to calculate the correct tile for the neighbour cells. (Like in Warcraft editor) Do you have an algoritm to do that? Thanks to all Arcangel
Arcangel
Advertisement
Firstly, create a terrain overlay priority and STICK TO IT!

IE. Hills over forest over grass over desert over swamp over water.

Once you''ve worked this out, when you draw your tiles across and down the screen, make each tile check the two tiles ABOVE that touch it. Depending on the terrain of both (tile above is hill, tile being drawn is grass) draw the overlay on either the current terrain or the checked terrain. As you go down the screen, each tile generates it''s own overlays instead of drawing the screen, then having to go back down the screen AGAIN to check the overlays.

Maybe follow this better for above-left tile (map[x] is the map class):
Hills = 0;
Forest = 1;
.....
Water = 5;
x = width;
y = height;
Current_Terrain = map[x + (y * map_width)].Terrain;
Check_Terrain = map[(x-1) + ((y - 1) * map_width)].Terrain;
if(Current_Terrain < Check_Terrain)
// Draw overlay on Current_Terrain tile.
if(Current_Terrain > Check_Terrain)
// Draw overlay on Check_Terrain tile.
-----------------------------Empires! Visit online at http://www.daleszone.comProgramming for a funner world.

This topic is closed to new replies.

Advertisement