sprite-pipeline
$
npx mdskill add openai/plugins/sprite-pipelineGenerates and normalizes 2D sprite animations from approved frames for consistent browser-game assets.
- Helps create full animation strips from seed frames to avoid frame-by-frame drift.
- Integrates with Python scripts for building reference canvases and normalizing sprite strips.
- Decides based on user requests for strip generation, anchor alignment, or preview rendering.
- Presents results as fixed-size game frames with shared scale and anchor, plus preview sheets.
SKILL.md
.github/skills/sprite-pipelineView on GitHub ↗
--- name: sprite-pipeline description: Generate and normalize 2D sprite animations. Use when the user asks for full-strip generation from approved source frames, consistent anchor and scale normalization, or preview assets for browser-game animation. --- # Sprite Pipeline ## Overview Use this skill for 2D sprite generation and normalization. This workflow is intentionally anchored around one approved frame and a whole-strip generation pass because frame-by-frame generation drifts too easily. This skill is 2D-specific. If the request is for 3D characters, meshes, or materials, route back through `../game-studio/SKILL.md`. ## Core Workflow 1. Start from an approved in-game seed frame. - The seed frame should already reflect the right silhouette, palette, costume, and proportions. 2. Build a larger transparent reference canvas around that frame. - Use `../../scripts/build_sprite_edit_canvas.py`. 3. Ask for the full animation strip in one edit request. - Do not generate each frame independently unless the user explicitly accepts lower consistency. 4. Normalize the result into fixed-size game frames. - Use `../../scripts/normalize_sprite_strip.py`. - Use one shared scale across the whole strip. - Align frames with one shared anchor, typically bottom-center. 5. Optionally lock frame 01 back to the shipped seed frame. - Do this when the animation should begin from the exact idle or base pose already in game. 6. Render a preview sheet and inspect the animation in-engine before approving it. - Use `../../scripts/render_sprite_preview_sheet.py`. ## Prompting Rules Always preserve these invariants in the prompt: - same character - same facing direction - same palette family - same silhouette family - same readable face or key features - same outfit proportions - transparent background - exact frame count and slot layout Always ask for: - one strip at once - a transparent canvas - no scenery, labels, or poster composition - crisp pixel-art clusters for pixel work - production asset tone, not concept art ## Using Image Generation For live asset generation or edits, use the installed `imagegen` skill in this workspace. This skill defines the game-specific process; `imagegen` handles the API-backed generation or edit execution. ## Script Recipes Create a reference canvas: ```bash python3 scripts/build_sprite_edit_canvas.py \ --seed output/sprites/idle-01.png \ --out output/sprites/hurt-edit-canvas.png \ --frames 4 \ --slot-size 256 \ --canvas-size 1024 ``` Normalize a raw strip: ```bash python3 scripts/normalize_sprite_strip.py \ --input output/sprites/hurt-raw.png \ --out-dir output/sprites/hurt \ --frames 4 \ --frame-size 64 \ --anchor output/sprites/idle-01.png \ --lock-frame1 ``` Render a preview sheet: ```bash python3 scripts/render_sprite_preview_sheet.py \ --frames-dir output/sprites/hurt \ --out output/sprites/hurt-preview.png \ --columns 4 ``` ## Quality Gates - proportions stay stable across frames - frame-to-frame size does not drift - action reads clearly at game scale - transparency is preserved - frame 01 matches the shipped sprite when lockback is enabled - preview looks correct before any in-engine asset index update ## References - Detailed workflow: `../../references/sprite-pipeline.md` - Shared frontend context: `../game-ui-frontend/SKILL.md`
More from openai/plugins
- accessibility-and-inclusive-visualizationMake data visualizations accessible and inclusive. Use when the user needs chart or diagram accessibility guidance, text alternatives for complex visuals, color and contrast review, keyboard support, reduced-motion behavior for animation or parallax, or an accessibility QA workflow for exported figures, UML-like diagrams, and dashboards.
- agent-browserBrowser automation CLI for AI agents. Use when the user needs to interact with websites, verify dev server output, test web apps, navigate pages, fill forms, click buttons, take screenshots, extract data, or automate any browser task. Also triggers when a dev server starts so you can verify it visually.
- agent-browser-verifyAutomated browser verification for dev servers. Triggers when a dev server starts to run a visual gut-check with agent-browser — verifies the page loads, checks for console errors, validates key UI elements, and reports pass/fail before continuing.
- agents-sdkBuild AI agents on Cloudflare Workers using the Agents SDK. Load when creating stateful agents, durable workflows, real-time WebSocket apps, scheduled tasks, MCP servers, or chat applications. Covers Agent class, state management, callable RPC, Workflows integration, and React hooks. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.
- ai-elementsAI Elements component library guidance — pre-built React components for AI interfaces built on shadcn/ui. Use when building chat UIs, message displays, tool call rendering, streaming responses, reasoning panels, or any AI-native interface with the AI SDK.
- ai-gatewayVercel AI Gateway expert guidance. Use when configuring model routing, provider failover, cost tracking, or managing multiple AI providers through a unified API.
- ai-generation-persistenceAI generation persistence patterns — unique IDs, addressable URLs, database storage, and cost tracking for every LLM generation
- ai-sdkVercel AI SDK expert guidance. Use when building AI-powered features — chat interfaces, text generation, structured output, tool calling, agents, MCP integration, streaming, embeddings, reranking, image generation, or working with any LLM provider.
- aiq-deploy|
- aiq-research|