Tilemap Editor - Usage Guide
Level: ⭐ Beginner | ⭐⭐ Intermediate
Quick Index
Layers
⭐ Layers: Basic Concept
Layers organize map elements at different depth levels:
- Top layer: Rendered above others
- Bottom layer: Rendered below others
- Maximum: 8 layers per scene
⚠️ Correction: Previous docs said 4 layers. Actual limit is 8 layers.
⭐⭐ Managing Layers
Add layer:
- Click + in LAYERS panel
- New layer inserted above selected
Delete layer:
- Click 🗑️ icon on layer
- Confirm deletion
- Cannot delete last layer
Duplicate layer:
- Click 📄 icon on layer
- Copy created with "(Copy)"
Reorder:
- Drag and drop in LAYERS panel
- Or use ordering commands
Rename:
- Double-click layer name
- Type new name
- Press Enter
Visibility:
- Click 👁️ to show/hide
- Hidden layers not exported
Projects
⭐ Creating a New Project
- Create New Project on Welcome Screen
- Configure:
| Field | Description | Default |
|---|---|---|
| Name | Project name | "New Scene" |
| Description | Optional | - |
| Tile Size | Pixels | 8 |
| Map Width | Tiles | 40 |
| Map Height | Tiles | 30 |
| Orientation | Landscape/Portrait | Landscape |
- Click Create Project
- Select empty folder
💡 Tip: Use "Fit Map to Hardware Limit" to auto-fit to ESP32 (320×240).
⭐ Project Settings
- Click Settings (gear icon)
- Or File → Project Settings
- Modify values
- Click OK
⚠️ Important: Changing tile size affects all existing tilesets.
⭐ Save & Load
| Format | Extension | Advantages |
|---|---|---|
| JSON | .pr32scene | Human-readable, git-friendly |
| Binary | .pr32scene.bin | Up to 335× smaller, 10× faster |
Switch to binary: File → Preferences → Use Binary Format
Tilesets
⭐ Importing a Tileset
Method 1 - TILESET panel:
- Click Import tileset
- Select PNG/JPG/BMP
- Auto-copied to
assets/tilesets/
Method 2 - Menu:
- File → Import Tileset
- Select image
📝 Format: PNG recommended, multiples of tile size, up to 16 colors.
⭐ Selecting Tiles
Single selection:
- Click tile (cyan border highlight)
Rectangular selection:
- Click start tile
- Drag to end tile
- Release to confirm
⭐⭐ Zoom in Tileset Panel
- Zoom In: Mouse wheel up
- Zoom Out: Mouse wheel down
- Increments: 0.5× (min 1×, max 10×)
⭐ Multiple Tilesets
- Import first tileset normally
- Repeat for additional tilesets
- Displayed one after another
- Global tile index (accumulated)
Tileset A: 10 tiles (indices 0-9)
Tileset B: 8 tiles (indices 10-17)Scenes
⭐⭐ Scenes: Concept
Scenes are independent levels/rooms in a project:
- Own dimensions
- Own layers
- Access to shared project tilesets
⭐ Creating a New Scene
- Click + in SCENE panel
- Created with same dimensions as active
- "Background" layer auto-added
⭐ Switching Between Scenes
- Click scene name in SCENE panel
- Canvas updates automatically
- Layers panel shows scene's layers
⭐⭐ Managing Scenes
Rename:
- Right-click scene → Rename
- Type new name
- Press Enter
Duplicate:
- Right-click scene → Duplicate
- Exact copy with "(Copy)"
Delete:
- Right-click scene → Delete
- Confirm
⚠️ Cannot delete last scene
Editing Tools
⭐ Brush (B)
- Select Brush (B)
- Pick tile from TILESET
- Click/drag on canvas
Rectangular patterns:
- Select rectangle in tileset
- Paint - full pattern applied
⭐ Rectangle (R)
- Select Rectangle (R)
- Click and drag on canvas
- Release to fill
⭐ Eraser (E)
Method 1:
- Select Eraser (E)
- Click/drag to erase
Method 2 (universal):
- Right-click with any tool
⭐⭐ Pipette (P)
- Select Pipette (P)
- Click tile on canvas
- Auto-selected in TILESET
⭐⭐ Attribute Tool (A)
- Select Attribute (A)
- Click tile to assign/edit
- Configure properties
💡 See: Advanced Guide for attributes
⭐⭐ Animation Eyedropper (I)
- Select Animation Eyedropper (I)
- Click tile on canvas
- Auto-linked to current animation
💡 See: Advanced Guide for animations
⭐⭐ Live Preview (L)
- Click Live Preview button
- Or press L
- Animations play in real-time on canvas
⭐ Pan (Space)
- Hold Space
- Drag to move view
- Release to return to tool
⭐ Zoom Controls
| Action | Method |
|---|---|
| Zoom In | Ctrl++ or Ctrl+wheel up |
| Zoom Out | Ctrl+- or Ctrl+wheel down |
| Reset Zoom | Ctrl+0 |
| Fit to Screen | Ctrl+F |
⭐ Tool Preview
Mouse over canvas:
- Dotted rectangle shows paint position
- Preview tiles 50% opacity
- Precise positioning before clicking
Onion Skinning
⭐⭐ Concept
Onion skinning shows translucent scenes over active scene:
- Align exits between levels
- Check platform consistency
- Compare designs between scenes
⭐ Activating
Per scene:
- Click 🧅 icon next to scene
- Scene appears translucent
Global:
- Activate "Show Onion Skin" checkbox
- Shows/hides all onion-enabled scenes
⭐ Adjusting Opacity
- Use "Opacity" slider
- Recommended: 0.3-0.5 (30-50%)
- Default: 0.4 (40%)
⭐⭐ Example: Aligning Exit
- Enable onion on previous level scene
- Adjust opacity to see both
- Place exit aligned with entrance
- Disable when done
⚠️ Onion scenes are visual-only (not editable).
Preferences
⭐ Access
File → Preferences
Grid Settings:
- Canvas Grid Intensity: Grid opacity (0-255)
- Tileset Grid Intensity: Grid opacity in tileset
- Attribute Indicator Opacity: Marker opacity (0.0-1.0)
Auto-save:
- Enabled: On/off
- Interval: Minutes (1-60)
Optimization:
- History Compression: Compresses consecutive operations
- Use Binary Format: Default .bin format
⭐⭐ Memory & Lazy Loading
Editor implements lazy loading for memory optimization:
- Inactive scenes stay unloaded
- Load on demand when switching
- Configurable in preferences
Keyboard Shortcuts
Tools
| Key | Action |
|---|---|
| B | Brush |
| E | Eraser |
| R | Rectangle |
| P | Pipette |
| A | Attribute |
| I | Animation Eyedropper |
| L | Live Preview |
| Space | Pan (hold) |
Navigation
| Shortcut | Action |
|---|---|
| Ctrl+Wheel | Zoom |
| Ctrl++ | Zoom in |
| Ctrl+- | Zoom out |
| Ctrl+0 | Reset zoom |
| Ctrl+F | Fit to screen |
Editing
| Shortcut | Action |
|---|---|
| Ctrl+Z | Undo |
| Ctrl+Y | Redo |
| Ctrl+S | Save |
| Ctrl+E | Export C++ |
| Esc | Close panels |
Mouse
| Action | Result |
|---|---|
| Left click | Paint/Select |
| Right click | Erase |
| Wheel | Zoom in tileset |
| Ctrl+Wheel | Zoom in canvas |
Glossary
| Term | Definition |
|---|---|
| Tile | Basic graphic unit (8×8, 16×16, etc.) |
| Tileset | Image containing multiple tiles |
| Layer | Depth level in map |
| Scene | Independent level/room |
| Canvas | Drawing area |
| ESP32 | Target hardware |
| BPP | Bits per pixel (1/2/4) |
| RGB565 | Color format (5R+6G+5B) |
Related Guides
- Quick Start - 5 minute guide
- Advanced Guide - Advanced features
- Technical Reference - Technical specs
