Learn How to Create a 2D Platformer Tilemap in Godot

In this tutorial, we will learn how to create a tile map for a platform game using the Godot game engine. Tile maps are essential when it comes to designing levels for platformers or any other grid-based games. We will be creating a simple tile map and then painting the level with the tiles that we have set up. This will lay the groundwork for our platform game environment.

Before starting this tutorial, make sure you are familiar with the following concepts:

  • Using the Godot game engine and its interface
  • Creating scenes and nodes

Project Files

To follow along with this tutorial, you can download the essential project files, including the tileset image, by clicking the link below:

Download Project Files Here

CTA Small Image

Creating the Environment

Creating a tile map is an important step in setting up a platform game. It allows you to create a grid that can be used to paint with sprites. In this article, we will go through the steps of creating a tile map and setting up the environment for our platform game.

Creating the Tile Map

To begin, we need to create a TileMap node. To do this, go to the Scene tab and click on the plus sign.

Scene tab

We then search for the TileMap node and create it.

TileMap node

Once the tile map is created, go to the inspector tab and click on the tile set button to create a New TileSet.

New TileSet

This will open up the tile set window along the bottom of your editor. Here, we need to tell the tile map what sprites we want to use to construct our level. To do this, drag-and-drop the tiles-packed.png file into the white box.


If you get a popup, click yes. If the tile size appears wrong inside the Tiles editor, go to the Inspector window and change the Tile Size to 18 by 18. This will ensure that the sprites are correctly aligned, if you are using your own textures, you may want to use different values.

Tile Size

Then, in the Properties panel of the Tiles editor, change the Texture Resolution to be the same 18 by 18. This will make the grid match up with your tiles.

Texture Resolution

If you are using a custom tileset, it may have gaps in between the tiles. You can add this using the Separation and Margins options.

Painting the Level

Now that the tile map is set up, we can begin painting the level. To do this, open the tile map window.

tile map window

Then chose the Select tool in the editor (or use the shortcut Q), as this is the tool needed to draw our tiles on the Tilemap node.

Select tool

Now if you Left-Click on the grid in the editor you can place tiles, or Right-Click to remove tiles. You can then select the tile you want to draw with from the Tiles panel and use them to construct the level.

Tiles panel

In the next lesson, we will look at setting up our Player Controller so that we have a player that can walk around our level.


In conclusion, we have successfully created a tile map and painted our level using the Godot game engine. This will serve as the foundation for our platform game, allowing us to build upon it by adding player characters, enemies, and other interactable elements. You can further explore the possibilities of the Godot game engine by adding more levels, creating a more complex tileset, or incorporating other mechanics such as power-ups and collectibles.

If you’d like to expand your game development knowledge, you can check out Zenva Academy’s extensive library of online courses, covering topics such as 2D and 3D game development, virtual reality, and more. With these resources at your disposal, you can take your game development skills to new heights and create the games you’ve always dreamed of!

We hope this tutorial has been informative and useful, and we wish you the best of luck on your future game projects!

Want to learn more? Try our complete CREATE A 2D PLATFORMER WITH GODOT 4 course.

Did you come across any errors in this tutorial? Please let us know by completing this form and we’ll look into it!

Python Blog Image

FINAL DAYS: Unlock coding courses in Unity, Godot, Unreal, Python and more.