Game Boy Pixel Art · Lesson 01 · 12 min
The Four Shades Have Jobs
The one colour lesson: name which value is doing which job in any Game Boy sprite, and draw one that obeys the same budget.
Four shades sounds like a colour problem. It isn’t. Four shades is a casting problem: you have four actors and a lot of parts, so each one has to be given a job and made to stick to it.
This lesson is about what those four jobs are. It is the only colour lesson in the course — everything after it is about drawing characters, then tiles, with colour brought back in only where it earns its place.
The art you’ll study
Every example here is real, human-made, public-domain art: Chloe Wolfe’s CC0
Game Boy Platformer Tileset & Character.
One character with five animations, two four-shade tilesets. Nothing below was drawn for
this lesson; the figures are the original pixels with shades mechanically switched off.
Full credits in CREDITS.md.
All four
Paper2.8%
Light38.1%
Dark25.7%
Ink33.4%
Look at the last two panels for a moment. Dark is a handful of soft clusters — it describes. Ink is a closed ring plus the face — it contains. They are the same distance apart on the ramp and they are doing completely different jobs.
The four jobs
| # | Name | Job |
|---|---|---|
| 0 | Paper | Highlight only. Eye glints, rims, wet edges. Never a fill. |
| 1 | Light | The lit side. Half of all form description. |
| 2 | Dark | The turned-away side. The other half. |
| 3 | Ink | Silhouette and separation. Holds the shape against the background. |
These names are the course’s vocabulary — see the glossary. Say “Ink”, not “black” and not “the outline colour”, because in a minute you’re going to retint the whole thing and nothing will be black any more.
The budgets are lopsided
Here is the part nobody tells you. The four shades do not get a quarter of the pixels
each. Not remotely. These are measured, not remembered — assets/build-examples.py
counts them:
| Asset | Paper | Light | Dark | Ink |
|---|---|---|---|---|
| Character — idle + walk, 5 frames | 2.8% | 38.1% | 25.7% | 33.4% |
| Character — jump | 5.4% | 33.3% | 26.6% | 34.7% |
| Character — fall | 4.9% | 36.0% | 24.4% | 34.7% |
| Environment — brown tileset | 3.6% | 31.5% | 44.5% | 20.4% |
| Environment — green tileset | 5.2% | 31.8% | 45.3% | 17.7% |
Two things fall straight out of that table.
On a character, Paper is a spark, not a fill. Under 6% in every character frame measured. If your lightest shade is covering a surface, it has stopped being a highlight and your sprite has lost a value.
Environments are a different story — some run Paper very high. That is a mood decision rather than a rule, and it is parked in Tone and Key.
Characters are ink-heavy; environments are ink-light. A third versus a fifth — the character spends roughly twice the ink of the ground it stands on. That gap is the figure-ground separation. It is not a stylistic flourish; it is the mechanism.
The two mid shades carry 60–76% of every image here. They do the actual describing. If you find yourself wishing for a fifth colour, the honest diagnosis is almost always that Light and Dark aren’t working hard enough yet.
The outline law
Run the same measurement on the silhouette — every drawn pixel that touches transparency, the pixels a player sees against the background:
215 of 215 silhouette pixels on the character are Ink. One hundred percent. Across all five walk frames, there is not one exception.
The tiles do not obey this: 73–77% of their outer edge pixels are Ink. That is the correct answer for a tile, which has to merge with the tile beside it rather than stand apart from it. Characters stand apart. Tiles merge. Same artist, same palette, opposite rule — because they have opposite jobs.
Value is the art; tint is a setting
The same pack ships tiles in green and in brown. Both are four shades; both use the budgets above. Nothing structural changes between them — the hue is a costume over identical value work.
Which is why the recommendation for this course is: draw in neutral greys, apply the tint at the end. Green is flattering. It hides value mistakes that grey exposes immediately. You can put the Game Boy green on at any point, including after the game ships. Three ready-to-import palettes are on the contract page.
Now draw one
Sixteen by sixteen. Draw an object — a rock, a key, a pot, a mushroom, whatever. Start with Ink and close the silhouette first, then fill with Light, then carve with Dark, then spend your two or three pixels of Paper.
The pad grades you live against the character contract: Ink at or above 25%, Paper at or below 6%, and every silhouette pixel Ink. Switch the tint while you work and watch the numbers not move.
Don’t aim for a good drawing. Aim for a drawing that passes. The point is to feel how early the budget starts pushing back on you — that pressure is the style.
Check yourself
Take it further
- Read next: SLYNYRD — Pixelblog 1: Color Palettes. Raymond Schlitter on ramps and value spacing. He is writing about larger palettes, but the argument — that the gaps between your values matter more than the values — is the single most useful thing to absorb before choosing your four. Read it once and you are done with colour theory for this course.
- Do this once: open the tileset image above at 1× and squint until it blurs. Every shape that survives is doing its job.
- Post it: when you have a sprite you half-like, the Lospec Discord is the lowest-stakes place to get it critiqued. You will learn more from one stranger’s eye than from three more lessons.
Keep
- The Four-Shade Contract — the numbers, the outline law, the palettes, and a pre-flight checklist. This is the page to keep open while drawing.
- Glossary — Paper, Light, Dark, Ink, tint, shade budget, silhouette-edge pixel.
Next: The Silhouette Is Most of the Drawing — and from here on it is characters, not colour.
Stuck, or think one of these numbers is wrong? Ask me. I am your teacher for this, and I would rather re-measure something than have you take a rule on faith. Good things to ask right now: why is the outline law absolute for characters but not for tiles?, what do I do when two mid shades aren’t enough?, or show me this on a sprite from a real Game Boy game.