OpenSNES
Modern Open-Source SNES Development SDK
Loading...
Searching...
No Matches
Game-Craft Guides

The API tutorials teach you how to call the SDK. These guides teach you how to decide — the seam between "I know the sprite API" and "I shipped a small game." They are hardware-grounded design advice, not reference: for the registers and exact hardware behaviour, see SNES Graphics Programming Guide.

The philosophy

Two ideas run through every guide here:

  1. Constraints are creative fuel. The SNES gives you 8 background modes, 64 KB of VRAM, 256 colours, and 32 sprites per scanline. Those are not walls to memorise and resent — they are the design language of the machine. Every classic you remember was shaped by them. We frame each limit as a lever, not a ceiling.
  2. Link the universal, own the SNES-specific. Camera design, "game feel," and why the PPU works as it does are already explained brilliantly elsewhere — we link that gold-standard material rather than rewrite it, and spend our words on the one thing nobody else covers: how to do it on real SNES hardware, with this SDK.

The guides

  • Planning your SNES gamePlanning your SNES game. Budget your VRAM, CGRAM and sprites before you draw a pixel; choose a background mode from your genre, not a spec sheet; scope a first game you can actually finish.
  • Composing with backgrounds & layersComposing with backgrounds & layers. How to use BG1/BG2/BG3 and sprites together for parallax, HUDs, foreground occlusion — as composition decisions, anchored to working examples.
  • The frame budgetThe frame budget. What one frame can do at 60 Hz: the VBlank DMA budget, the sprite-per-line limit, CPU time, and when 30 fps is the right call. The time companion to Planning's space.
  • From tiles to levelsFrom tiles to levels. Think in metatiles, attach collision and meaning to tiles, stream a level bigger than VRAM, and author it in Tiled instead of by hand.
  • Following the player: the cameraFollowing the player: the camera. Deadzones, look-ahead, platform snapping, room-locking — all derived from one camera value that feeds every layer's scroll.
  • Game feel: juice on real hardwareGame feel: juice on real hardware. Screen shake, hit flash, hitstop, fades, palette cycling — the SNES-specific tricks that make an action feel good, each a few cheap frames.

Go deeper — the curated shelf

When a topic is universal, we point you at the best explanation that exists. Read these; they are worth your time:

Topic Resource
2D cameras (deadzones, look-ahead, room-locking) Itay Keren, Scroll Back: The Theory and Practice of Cameras in Side-Scrollersread
Game feel / juice Jonasson & Purho, Juice It or Lose It (GDC) — watch
Why the SNES PPU works as it does Fabien Sanglard, SNES: Sprites and backgrounds renderingread
Visual hardware explainers (modes, palettes, sprites) Retro Game Mechanics Explained — channel
Metatiles & tile-based level workflow nesdoug, Metatilesread
Level-design craft (pacing, theme, variety) SMW Central beginners' guide — read
Pixel art within a palette (indexed, 15+1) 2D Will Never Die, So You Want Your Sprites to Be 16 Colorsread

The hardware references we cite

Every number in these guides traces to one of these; when we say "≈4 KB per VBlank" or "32 sprites per line," this is where it comes from: