Welcome to the first devlog entry for Snake Rewind: a retro inspired, shader fueled twist on the classic Snake game built using Raylib in C.
What We Covered
In Episode 1 we focused on building the pixel perfect game grid that powers everything in Snake Rewind:
- Setting up a fixed resolution framebuffer
- Rendering a tile based grid that snaps to pixel coordinates
- Drawing each tile with per cell logic
- Preparing a solid canvas for shaders, clones and mechanics coming up in future episodes
This grid isn’t just a background. It’s the foundation for the snake, the food, the clones and every visual effect we’ll be layering on top. Getting it right at the start means everything stays crisp and deterministic across all resolutions.
Why This Matters
Snake Rewind isn’t just a remake. It’s a step up. We’re building this from scratch but pushing it far past beginner level by integrating:
- Clone mechanics (your past self becomes your enemy)
- Bloom and glow effects
- Retro scanlines and chromatic aberration
- Dynamic, reactive UI and juicy feedback
- Cinematic shaders and sound polish (hopefully)
But it all starts with one thing: a clean, scalable and pixel perfect grid.
Code Highlights
You’ll find the complete source code here: snake-rewind
RenderTexture2D
with internal game resolution- Tile size + spacing logic for predictable layout
- Origin offset and centering math for visual balance
- Foundation for post processing shaders
Acknowledgements
Snake Snake Snake - Original idea of a Snake clone
What’s Next?
In Episode 2 we’ll make the grid come alive by implementing snake movement and input handling. Get ready to slither, wrap and eventually grow.