Getting pixel art into Godot is easy. Getting it to stay crisp takes two small settings most beginners miss.
If your imported sprites look soft or blurry, you are almost certainly hitting Godot's default texture filtering. Once you fix that, the rest is straightforward.
Here is how to import sprites and tilesets into Godot 4 cleanly.
Fix the blur first
By default, Godot smooths textures, which destroys crisp pixel art.
You have two ways to fix this:
- Set it project-wide: open Project Settings, enable Advanced Settings, and under Rendering, Textures, set the default texture filter to Nearest. This is the easiest option and covers your whole game.
- Set it per texture: select the imported image in the FileSystem dock, open the Import tab, and set the filter to Nearest, then click Reimport.
Project-wide is usually the right call so you never have to think about it again.
Import a single sprite
To add a simple sprite:
- Drag your PNG into the Godot project folder so it appears in the FileSystem dock.
- Add a Sprite2D node to your scene.
- Drag the texture from the FileSystem into the Texture property of the Sprite2D.
With Nearest filtering on, it should look crisp at any zoom.
Import a spritesheet for animation
If your sprite is a spritesheet with multiple frames, use an AnimatedSprite2D instead.
- Add an AnimatedSprite2D node.
- In the SpriteFrames editor, create a new animation.
- Use the spritesheet import option to slice the sheet into frames by setting the grid dimensions.
- Set the frame count and speed, then play to preview.
This is how you turn a row of frames into a working walk or idle animation.
Set up a tileset
Tilesets use the TileMap system.
- Add a TileMapLayer node to your scene.
- In the inspector, create a new TileSet resource.
- In the TileSet panel, add your tileset image as an atlas.
- Set the tile size to match your art, for example 16 by 16.
Godot will slice the image into individual tiles based on that grid.
Paint your level
Once the tileset is set up, the TileMap editor lets you paint.
- Select tiles from the palette at the bottom.
- Paint them onto the grid in the viewport.
- Use rectangle and bucket tools for large areas.
Because the tiles snap to the grid, levels come together quickly and stay aligned.
Add collision to tiles
For platformers and top-down games, tiles often need collision.
In the TileSet editor, select a tile, open the physics layer, and draw a collision shape on it. Tiles painted into the map will then block the player automatically. This is far faster than placing individual collision nodes by hand.
Keep pixels aligned
For the sharpest result, keep a few habits:
- Use whole-number positions and integer scaling
- Match your camera and viewport to your art resolution
- Avoid rotating or non-integer scaling pixel sprites where you can
These keep pixels on the grid and prevent shimmering as things move.
Get game-ready assets to import
The fastest way to test all of this is with assets that are already clean and consistent.
Game-ready packs with clear grid sizes drop straight into Godot's TileMap and AnimatedSprite2D workflows. You can browse free pixel art on Pixelbook, grab sprites and tilesets that list their grid size, and import them into your Godot project in minutes.
