Creating Tilemaps for Mobile Games
Tilemap—system where level built from repeating fixed-size tiles. Not just visual tool—it's pipeline from tileset creation to engine loading with batched rendering and proper collision. Poorly assembled tileset becomes hundreds of draw calls where should be one.
Tileset: Size and Structure
Standard tile: 16×16, 32×32, 64×64 or 128×128 pixels. Choice depends on resolution and style. Pixel art—16×32 or 32×32. Casual 2D—64×64 or 128×128.
Critical requirement: seamless edges. Right edge of tile must exactly match left edge of neighbor, else "seams" visible at joints. In Aseprite and Photoshop—Tile Mode (View → Tile Mode in Aseprite) allows drawing with preview of seams in real time.
Tileset as single PNG—standard. All tiles in grid on one image. In Unity Tilemap system works with Sprite Atlas or Tile Palette. In Tiled (level editor)—tileset specified by one PNG with grid parameters. One texture = one draw call for entire tilemapped scene with proper setup.
Autotile (Terrain Tiles in Unity, Bitmasking). Idea: instead of manually selecting correct tile for each position (corner, edge, interior)—system automatically determines needed tile by neighbors. Unity Terrain Tiles with Tile Flags and bitmask logic. In Tiled—Wang Tiles. Artist draws set of 8–16 transition tiles, engine substitutes correct one automatically.
Layer Structure
Professional Tilemap—not one layer, but minimum three:
-
Background—sky, distant background, static without collisions.
Z = -2, noTilemapCollider. -
Ground—earth, platforms.
Z = 0,TilemapCollider2D+CompositeCollider2D. -
Foreground / Details—grass, décor above character.
Z = 2, no collisions.
CompositeCollider2D in Unity combines all individual tile colliders into one mesh collider. Without it, 100 platform tiles = 100 Box Collider2D checks per Physics update. With CompositeCollider—one Polygon Collider. Critical difference for performance.
Animated Tiles
AnimatedTile in Unity—tile with sprite set and animation speed. Water, lava, flickering lights. Each AnimatedTile—separate update cycle. Don't overuse: 50 animated water tiles on screen—50 Coroutine or Update calls. For large water surfaces—shader with UV animation is better.
Level Editors and Export
Tiled Map Editor—external level editor, exports to JSON / XML / TMX. In Unity integrates via SuperTiled2Unity or Tiled2Unity package. Levels stored as assets, editable outside Unity. Convenient for level designer without Unity experience.
LDtk (Level Designer Toolkit)—modern Tiled alternative with better UX. Native Unity integration via official LDtk to Unity package (Unity Package Manager). Supports entities, custom fields for game logic data.
Godot TileMap—built-in system, no external tools needed. TileSet with terrain layers, physics layers, custom data layers. Autotile via terrain_set.
From practice: mobile platformer, Unity + SuperTiled2Unity. 800-tile level gave 35 draw calls—unexpectedly many. Reason: artist accidentally used two different tileset PNGs with identical content (one original, one duplicate with different filename). Unity created two Materials for two textures. After merging into one tileset—2 draw calls for all tilemap geometry.
Pixel Art Specifics for Tilesets
Filter Mode: Point (no filter)—mandatory. Bilinear filtering blurs pixels at tile seams. Pixel Snap in Camera Settings or via PixelPerfectCamera component—removes subpixel jitter when camera moves. Compression: None for tilesets with thin pixel lines—ASTC destroys crispness.
Pixels Per Unit must match tile side: 32px tile → PPU = 32. Otherwise tiles won't align in Unity Tilemap.
Types of Tilemaps
| Type | Features |
|---|---|
| Orthographic (rectangular) | Standard for platformers, top-down |
| Isometric | Diagonal view, RPG / strategy. Tile Shape: Isometric in Unity |
| Hexagonal | Strategy. Tile Shape: Hexagonal in Unity and Godot |
| Top-down with offset | 45° view, JRPG style |
Isometric tiles require additional work with object sorting by Y-coordinate—objects lower on screen must render above objects higher. Renderer.sortingOrder by transform.position.y or TilemapRenderer.Mode: Individual with custom IComparator.
What's Included
- Tileset creation (seamless, with transition tile variants)
- Terrain / Autotile set for automatic tile connection
- Level assembly in Unity / Godot / Tiled per game design
- Layer setup (background, collisions, foreground)
- CompositeCollider for optimized physics
- Animated tiles for water, lava, special effects
- Draw calls and batching check in profiler
Timeline
Tileset for one location (basic tiles + transitions + décor)—1–2 weeks. Level assembly based on ready tileset—3–5 days for 5–10 standard levels. Complete set for game with 3–5 thematic locations—1–2 months. Cost calculated individually.







