К основному содержанию
скилл CX Codex

canvas-performance-optimization — скилл для Claude Code

Устраняет просадки кадров в изометрических Canvas-играх за счёт отсечения невидимых тайлов, кэширования статики и удаления аллокаций.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add 0xheycat/isometric-game-skills --skill canvas-performance-optimization -a claude-code
Открыть на GitHub

Что делает canvas-performance-optimization

Изометрические игры на HTML5 Canvas часто упираются в сотни вызовов отрисовки и паузы сборщика мусора при скролле карты. Скилл задаёт чёткий цикл оптимизации: замер времени кадра, отсечение объектов вне области видимости (culling), объединение отрисовки из атласа текстур и вынос статического грунта на отдельный оффскрин-холст (offscreen canvas).

Внутри также заложено правило округления координат до целых пикселей, чтобы исключить лишнюю нагрузку от субпиксельного рендеринга, и запрет на создание массивов или объектов внутри цикла отрисовки. Без предварительного профилирования браться за оптимизацию бессмысленно, поэтому скилл требует замерить время кадра до и после внесения правок.

Какие задачи решает

  • устранить просадки FPS при панорамировании изометрической карты
  • сократить количество вызовов отрисовки через батчинг из атласа
  • кэшировать статичный слой земли на оффскрин-холст
  • избавиться от пауз сборщика мусора из-за аллокаций в цикле рендера

Примеры запросов агенту

  • Оптимизируй цикл рендера в Canvas-игре: FPS проседает при движении камеры по изометрической карте.
  • Найди аллокации внутри цикла отрисовки и настрой кэширование статичной земли на оффскрин-холст.
  • Настрой отсечение невидимых тайлов вне вьюпорта и батчинг спрайтов из атласа.

Как установить canvas-performance-optimization

1Через Skills CLI (Vercel)

npx skills add 0xheycat/isometric-game-skills --skill canvas-performance-optimization -a claude-code

2Вручную: положить файлы

~/.claude/skills/canvas-performance-optimization/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/canvas-performance-optimization/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о canvas-performance-optimization

Как установить canvas-performance-optimization в Claude Code?

Выполните в терминале команду npx skills add 0xheycat/isometric-game-skills --skill canvas-performance-optimization -a claude-code.

Что делает скилл canvas-performance-optimization?

Он направляет агента по шагам оптимизации 2D-игры: от профилирования и отсечения невидимых тайлов до батчинга текстур и устранения аллокаций в цикле рендера.

Зачем нужно кэшировать статичный слой земли?

Неизменяемый грунт перерисовывается каждый кадр впустую; скилл предписывает сохранить его на оффскрин-холст и обновлять только при реальных изменениях карты.

Исходный текст

SKILL.md · MIT
---
name: canvas-performance-optimization
description: Use when an isometric Canvas game drops frames, to cut draw calls and allocations and hold a steady 60fps.
license: MIT
---

# Canvas Performance Optimization

## 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

1. Profile first - measure where the frame time actually goes.
2. Cull: only draw tiles/objects inside the viewport.
3. Batch draws from one atlas to minimize texture binds.
4. Cache static layers (ground) to an offscreen canvas; redraw only when it changes.
5. Eliminate per-frame allocations (reuse arrays/objects).
6. Avoid sub-pixel blits; snap to integer pixels.
7. Re-profile to confirm the fix, do not assume.

```text
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.

© 0xheycat · MIT · 0xheycat/isometric-game-skills

Похожие скиллы

Все скиллы по теме «Геймдев и 3D: Unity, Unreal, Godot, Blender» →
orbit-card heygen-com Скилл для встраивания готового 10-секундного 3D-блока HyperFrames: карточка фичи облетает сферу из точек по траектории камеры из Blender. CX Codex +1 10 000установок cad earthtojake Создаёт и правит параметрические CAD-модели, экспортирует STEP, STL, 3MF и GLB, измеряет геометрию и открывает готовые файлы в CAD Viewer. CX Codex +1 14 000установок step-parts earthtojake Скилл ищет готовые покупные детали в каталоге step.parts и скачивает их STEP-файлы, чтобы не рисовать заглушки в сборке. CX Codex +1 11 200установок sdf earthtojake Скилл создаёт и проверяет SDFormat-файлы для моделей и миров, а затем помогает подготовить их к передаче в симулятор. CX Codex +1 10 500установок urdf earthtojake Скилл помогает создавать, проверять и отлаживать описания роботов в формате URDF. Пригодится для работы со звеньями, сочленениями и геометрией. CX Codex +1 10 500установок hatch-pet официальный openai Создаёт и упаковывает анимированных питомцев и спрайт-листы для Codex. Пригодится, когда нужен персонаж по описанию, изображению или фирменным ориентирам. CX Codex +1 3 300установок

Из того же набора21

godot4-isometric-tilemap Настраивает 2:1 изометрию в Godot 4 через TileMapLayer и Y-sort: правильный порядок отрисовки, без ручных смещений спрайтов. CX Codex +1 ★ 41звёзд репо depth-sorting-occlusion Помогает настроить правильный порядок отрисовки спрайтов в изометрии, чтобы персонажи не перекрывали деревья и стены на переднем плане. CX Codex +1 ★ 41звёзд репо comfyui-lowvram-setup Скилл задаёт низкопамятную конфигурацию ComfyUI для генерации изометрических ассетов SDXL. Пригодится для настройки RTX 3060 с 12 ГБ видеопамяти и подготовки целого набора тайлов. CX Codex +1 ★ 41звёзд репо canvas2d-isometric-renderer Собирает цикл отрисовки изометрической карты на Canvas 2D: тайлы фоном, объекты после них и по глубине. CX Codex +1 ★ 41звёзд репо camera-pan-zoom-controls Скилл для изометрической камеры: перетаскивание пан, зум к курсору и привязка к границам карты. Плитки остаются пиксельно-выровненными, без мерцания. CX Codex +1 ★ 41звёзд репо autotiling-transitions Скилл для ИИ-кодинга, который задаёт правила автоподбора переходных тайлов между травами, водой и песком. Пригодится, когда карта выглядит как шахматная доска из-за резких стыков. CX Codex +1 ★ 41звёзд репо asset-pipeline-automation Выстраивает сквозной конвейер сборки игровых ассетов: от сырых спрайтов до готового атласа, JSON и валидации ссылок по одной команде. CX Codex +1 ★ 41звёзд репо animated-sprite-generation Помогает собрать зацикленную анимацию из кадров для изометрической игры. Пригодится для воды, огня, дыма, мельниц или флагов. CX Codex +1 ★ 41звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой