0 votes

Hello community,

I want to create terrain "with fake elevation" for a 2d (isometric) game, which should look similar to the below. I have googled for an entire weekend, and tried several approaches, such as:
- https://github.com/PetePete1984/SuperTilemap
- or working with a hex tilemap that has different brightness tiles.
In the map editor for the below game the effect is achieved by pulling up (or down) the tile corner points of the terrain grid, which then stretched the textures in the front, while compressing the texture in the back. that in combination with brightness / shade creates the effect.
In Godot tilemaps I cannot find such means to distort the grid in such way, the tiles are always the tiles, there is no stretching...

can someone advise how such terrain can be achieved? Help is greatly appreciated! Thanks!

enter image description here

enter image description here

Godot version 3.3
in Engine by (12 points)

You'll probably need to implement your own TileMap object. You can choose to inherit from the TileMap so you get functionality for free or create an entirely new class. Instead of just storing tiles as ints that point to a texture you can store your own custom Tile object where you can implement the stretching/compression and shading effects.

I have similar problem. I'm looking for a solution how "old time" gamemakers created fake 3D terrain in 2D isometric games like:

The Settlers
Settlers 1
Settlers 2
Settlers 3
Settlers 4

Sim City 4
Sim City 4

The Sims 1
The Sims 1

Cultures Series

Knights and Merchants
Knights and Merchants

Do you know any good source of knowledge, wher can I find more information about this subject?

1 Answer

0 votes

I would simply use a 3D terrain, and then freeze the camera to make it look 2D, then just add 2D sprites afterwards, the terrain seems like a very 3D problem which would not easily be solved in 2D, if you want to take this approach then you may want to check out the "ehightmap terrain" plugin by Zyllan, it's in the assetLib in the engine ;)

by (212 points)
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.