Most AI tools treat "Commodore 64 pixel art" as a style. The output is a small, soft-shaded image with thousands of colors and no consistent grid, and it needs to be redrawn before it can be used.
Layer treats the machine as a constraint. Each supported machine's palette, color-per-block rule and pixel shape are on file, they go into the prompt as values, and a deterministic pass after generation puts every pixel on the grid and every color in the declared palette. The result is pixel art that fits the hardware it was made for, ready to edit or import.
Pick Your Machine
Each of the most requested machines has its own page, with example messages and the sprites they made: NES, SNES, Mega Drive / Genesis and Game Boy Advance. Have art already? Turn an image into a sprite for any of them.
Hardware-Authentic Sprites
A machine's look comes from its constraints. Layer applies four of them to every generation.
Palette, as values On a machine with a fixed palette (C64, ZX Spectrum, Amstrad CPC, NES, Game Boy DMG, MSX), the values are the hardware's own. On a machine without one (SNES, Mega Drive, Game Boy Color, Game Boy Advance, Game Gear, PC Engine), a working set is chosen and stated in hex, because the per-tile budget alone leaves every hue open.
Block rule Two colors per 8x8 cell on a C64 in hi-res. Three plus a backdrop per 16x16 area on the NES. Fifteen usable per palette line on a Mega Drive. Two per 8x1 strip on an MSX 1. These rules determine how the art is composed, and Layer writes them into the prompt with their block size.
Pixel shape Pixel aspect follows from the framebuffer and the display it was built for. A C64 multicolor pixel at 160x200 is 1.67 times wider than tall; the same machine's 320x200 hi-res pixel is taller than wide. Layer derives the shape per mode instead of applying one square block size to everything.
Palette conversion Machines with composite video output have no canonical hex values, so Layer uses the community-settled conversions and names them: Colodore/Pepto for the C64, the Lospec set for the NES. If you supply your own palette, yours is used instead.
Supported Machines
Commodore 64 16 fixed colors. The greys form the only full value ramp, and each hue has at most two steps, so a three-step hue ramp is not available. Layer uses two steps plus a grey, or a hue shift, as the hardware did.
NES / Famicom A 55-color working set, with three colors plus the backdrop per 16x16 area. One of the three usually goes to the outline. The set is rich in greens and magentas and has only three yellows.
Game Boy (DMG) Four shades in total, not four per tile, on square 160x144 pixels. All form separation is by value. A Game Boy sprite in full color is a Game Boy Color sprite, which Layer handles as a separate machine.
Sega Mega Drive / Genesis About 61 colors on screen, in four palette lines of fifteen usable colors. Shading is done by dithering (vertical lines for transparency effects, checkerboards for gradation), and Layer keeps that pattern rather than smoothing it.
Nine machines are documented in full, with palettes in hex: the four above plus Game Boy Color, ZX Spectrum, Amstrad CPC, SNES and Game Boy Advance. Eleven more carry their palette, key rule and pixel shape: MSX 1, Commodore Plus/4, Thomson, BBC Micro, Atari 8-bit, Apple II, Sega Master System, Game Gear, PC Engine, Atari 2600 and Atari Lynx. For a machine not on this list, Layer says the palette is not on file and proposes one in hex, labeled as a choice.
Deterministic Tools After Generation
A prompt can request a grid and a palette but cannot guarantee them. Layer's own tools run after generation to enforce them.
Current image models The art is generated on the current image models. Layer carries 300+ and adds new ones as they ship. The hardware constraints go into the prompt regardless of which model runs.
Grid-and-palette snap Layer detects the pixel grid present in a generated image, then sets every cell to one flat color from the declared palette. The pass reports what it certified and what it could not, including when a color had to move far from its original value.
Sheet split and sheet pack Split a finished sprite sheet into individual frame files, or pack approved frames into one sheet with uniform cell spacing.
No model cost No model runs in these passes, so they use no Creative Units. You can snap, split and repack as many times as needed.
Sprite Sheets, Frames, and Single Sprites
Individual character sprites A single character on a matte color chosen from outside the machine's palette, so background removal can separate it cleanly. Magenta works on a C64 or NES; the ZX Spectrum palette includes it, so another color is used there.
Animation frames Idle, walk, run, attack, hit and death cycles. Generate the strip and split it into numbered frame files, or generate key poses as timing reference for your animators.
Sheets and atlases Pack approved frames into a uniform sheet with predictable cell geometry for an engine importer. The sprite sheet generator starts one from a single reference; image to sprite converts existing concept art into a sprite.
Tiles, items and UI Weapons, pickups, HUD icons and terrain tiles in the same palette and block rule as the characters. Batch generation produces a full item set in one job.
Export to Aseprite and Game Engines
Pixel editors A snapped sprite is a PNG with uniform cells, flat fills and only the declared colors. It opens in Aseprite, Pyxel Edit, GraphicsGale or Photoshop as editable pixel art. Scale it down by the reported cell size for a 1:1 canvas.
Game engines Export PNG for Unity, Unreal, Godot, GameMaker or your own engine. The cell size Layer reports is the value to enter in the importer's slice settings.
API and MCP Every step is available through the REST API and MCP, so a studio can run register-accurate sprite generation from its own pipeline.
Custom Palettes and Style Training
The same mechanism works for a modern pixel style with no hardware behind it. Declare your game's hex values and Layer generates against them and snaps to them, which keeps a 24- or 32-color palette consistent across hundreds of assets.
Custom model training encodes your outline treatment, pixel density and proportions so new sprites match the ones you have shipped. Reference sets keep a character consistent across poses and frames. Art directors set the palette, block size, pixel aspect and dithering policy once, and the team generates within it.
Powered by the Layer Agent
You describe the sprite and name the machine in a conversation with the Layer agent. The agent selects the register, chooses a palette subset for the subject rather than the machine's full range, writes the values, block rule and pixel shape into the prompt, generates, snaps the result, and reports what it certified. If you name a machine it has no numbers for, it says so.
See sprite generation for 2D sprite production more broadly, character design for concepting the cast, and concept art for earlier visual development.