Canvas Performance Optimization
SkillMonitoring & opsUse when an isometric Canvas game drops frames, to cut draw calls and allocations and hold a steady 60fps.
Available today. Use it from your connected AI after setup.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the Canvas Performance Optimization skill
What this skill tells your AI
The instructions your AI receives, as published by 0xheycat/isometric-game-skills in skills/canvas-performance-optimization/SKILL.md and read by ahel’s review.
Overview
Isometric games die by a thousand draw calls. This skill profiles the frame, culls off-screen tiles, batches from the atlas, and removes per-frame allocations to hit a stable 60fps.
When to Use
- Frame rate drops or stutters.
- Large maps lag when panning.
- You suspect GC pauses or overdraw.
Process
- Profile first - measure where the frame time actually goes.
- Cull: only draw tiles/objects inside the viewport.
- Batch draws from one atlas to minimize texture binds.
- Cache static layers (ground) to an offscreen canvas; redraw only when it changes.
- Eliminate per-frame allocations (reuse arrays/objects).
- Avoid sub-pixel blits; snap to integer pixels.
- Re-profile to confirm the fix, do not assume.
Profile -> Cull -> Batch -> Cache static layer -> Kill allocations -> Re-profile
Rationalizations (Stop Lying to Yourself)
| Excuse | Reality |
|---|---|
| "I know what is slow without profiling" | Guessing wastes hours on the wrong thing. Profile first. |
| "Redrawing the ground every frame is fine" | Static ground should be cached. Redraw only on change. |
Red Flags - STOP if you catch yourself:
- Optimizing before profiling.
- Redrawing static layers every frame.
- Allocating inside the render loop.
Verification
You are NOT done until every box is checked:
- Frame time was profiled before and after.
- Off-screen content is culled and static layers cached.
- No allocations occur inside the render loop; 60fps holds.
Signals
- GitHub stars
- 21
- Forks
- 3
- Last commit
- Aug 2026
Advanced
- Item type
- skill
- Key
canvas-performance-optimization- Source
- github.com/0xheycat/isometric-game-skills