Blind Sector
An open-source first-person shooter game occupying only 16 KB. Its core gameplay revolves around sonar scanning: players navigate darkness by emitting pulses to sense the environment. It was completed with AI-assisted coding.
Timeline (last 90 days)
On Reddit, a developer used AI-assisted coding (Vibe Coding) to create a complete 16 KB first-person shooter game called Blind Sector.
The complete source code and executable file of Blind Sector have been open-sourced and released on GitHub (https://github.com/zTrojan/blind-sector).
The level in Blind Sector is a 64×64 grid, and ray casting is performed in the fragment shader using a 2D DDA algorithm, a design that freed up about 430 bytes of space.
Each frame of Blind Sector rewrites a 64×90 RGBA32F floating-point texture on the CPU, containing cell data, the enemy list, pulse states, lights, HUD text, and font bit information, achieving zero uniforms, zero matrices, and a single draw call.
The enemies in Blind Sector are constructed from signed distance fields (SDFs), assembled from rounded boxes and limb segments (7 bytes per part), and rendered via smooth union and sphere tracing.
In compilation optimization, the author of Blind Sector used a 300 MB Crinkler hash table instead of the 100 MB version, trading build speed for a smaller final size.
The music in Blind Sector is procedurally generated; each bar selects a chord from a natural scale and harmonic progression via a tiny LCG, and the pad, bass, and arpeggio are played through the same synthesizer used for sound effects, without storing any audio sample data.
In the game mechanics of Blind Sector, each sonar pulse both illuminates walls and enemies and generates noise that exposes the player's position.
The author stated that tasks such as controlling a 16 KB program's size usually require deep demoscene knowledge, whereas this time AI was used to complete the entire process from planning to optimization.
All Facts (8)
The complete source code and executable file of Blind Sector have been open-sourced and released on GitHub (https://github.com/zTrojan/blind-sector).
50%UnverifiedThe level in Blind Sector is a 64×64 grid, and ray casting is performed in the fragment shader using a 2D DDA algorithm, a design that freed up about 430 bytes of space.
50%UnverifiedEach frame of Blind Sector rewrites a 64×90 RGBA32F floating-point texture on the CPU, containing cell data, the enemy list, pulse states, lights, HUD text, and font bit information, achieving zero uniforms, zero matrices, and a single draw call.
50%UnverifiedThe enemies in Blind Sector are constructed from signed distance fields (SDFs), assembled from rounded boxes and limb segments (7 bytes per part), and rendered via smooth union and sphere tracing.
50%UnverifiedIn compilation optimization, the author of Blind Sector used a 300 MB Crinkler hash table instead of the 100 MB version, trading build speed for a smaller final size.
50%UnverifiedThe music in Blind Sector is procedurally generated; each bar selects a chord from a natural scale and harmonic progression via a tiny LCG, and the pad, bass, and arpeggio are played through the same synthesizer used for sound effects, without storing any audio sample data.
50%UnverifiedIn the game mechanics of Blind Sector, each sonar pulse both illuminates walls and enemies and generates noise that exposes the player's position.
50%UnverifiedThe author stated that tasks such as controlling a 16 KB program's size usually require deep demoscene knowledge, whereas this time AI was used to complete the entire process from planning to optimization.
50%