redblobgames
I make interactive visual explanations of math and algorithms, using motivating examples from computer games. I work both with educators and game developers.
Red Blob GamesSilicon Valley CA & Seattle WA
Pinned Repositories
1843-planet-generation
One week experiment: learn how to procedurally generate maps on a sphere. Code is messy but it runs.
2014-starter-page
If you want to write tutorials with interactive diagrams like mine, here's some code to get you started. I have vanilla, lit-html, Vue, React, Svelte, and Preact+HTM versions of a simple interactive diagram.
circular-obstacle-pathfinding
Pathfinding around a set of circular obstacles
cpp-traverse
C++ Serialization library focusing on extensibility, both of input/output formats and of data types
dual-mesh
V2 of dual polygon-triangle mesh code used in redblobgames's projects from 2017 to 2022. V3 (not here) used from 2023 onwards.
helloworld-sdl2-opengl-emscripten
Basic program that uses SDL2+OpenGL, compiling both locally and via emscripten
making-of-circle-drawing
How I make an interactive tutorial using vue v2
making-of-line-drawing
How I make an interactive tutorial using d3.js
mapgen2
JavaScript version of mapgen2 polygon map generator algorithms
mapgen4
Mapgen4 procedural wilderness map generator
redblobgames's Repositories
redblobgames/mapgen4
Mapgen4 procedural wilderness map generator
redblobgames/mapgen2
JavaScript version of mapgen2 polygon map generator algorithms
redblobgames/1843-planet-generation
One week experiment: learn how to procedurally generate maps on a sphere. Code is messy but it runs.
redblobgames/helloworld-sdl2-opengl-emscripten
Basic program that uses SDL2+OpenGL, compiling both locally and via emscripten
redblobgames/dual-mesh
V2 of dual polygon-triangle mesh code used in redblobgames's projects from 2017 to 2022. V3 (not here) used from 2023 onwards.
redblobgames/making-of-line-drawing
How I make an interactive tutorial using d3.js
redblobgames/circular-obstacle-pathfinding
Pathfinding around a set of circular obstacles
redblobgames/cpp-traverse
C++ Serialization library focusing on extensibility, both of input/output formats and of data types
redblobgames/2014-starter-page
If you want to write tutorials with interactive diagrams like mine, here's some code to get you started. I have vanilla, lit-html, Vue, React, Svelte, and Preact+HTM versions of a simple interactive diagram.
redblobgames/2025-roguelikedev
Each summer people on r/roguelikedev create a roguelike game, following a tutorial. I followed the tutorial in 2020 and made this.
redblobgames/2126-roguelikedev
2021 Reddit r/roguelikedev summer tutorial series
redblobgames/making-of-draggable
How I handle mouse and touch events to drag objects around on my pages
redblobgames/2327-roguelikedev
2023 Summer r/roguelikedev event
redblobgames/making-of-circle-drawing
How I make an interactive tutorial using vue v2
redblobgames/2003-rust-network-game
Simple server+client game with Rust+JS
redblobgames/2226-roguelikedev
2022 Reddit r/roguelikedev summer tutorial series
redblobgames/1824-rust-roguelikedev-tutorial
Following the reddit r/roguelikedev tutorial series, using the Rust version
redblobgames/2234-hunar-alife-simulation
Fun particle simulation
redblobgames/algovis
collection of projects and links about algorithm visualization
redblobgames/2002-rust-chat-server
Learning Rust, with Mac+Linux+Wasm outputs, websockets, threads
redblobgames/2121-triangle-grids
Quick and dirty implementation of a triangle grid diagram using BorisTheBrave's python library
redblobgames/prng
Simple JS seeded random number generator
redblobgames/2421-helloworld-rotjs-tiles
Example of Rot.js with Kenney sprites
redblobgames/msdfgen
Multi-channel signed distance field generator
redblobgames/delaunator
A really fast JavaScript library for Delaunay triangulation of 2D points
redblobgames/icons
All SVG icons available on http://game-icons.net
redblobgames/vue-land.github.io
Vue Land FAQ
redblobgames/content
The content behind MDN Web Docs
redblobgames/freshwater.github.io
Mirror of oftenpaper.net (home of the ultimate sierpinski triangle page)
redblobgames/webgl-noise
GLSL procedural noise functions compatible with WebGL