Real-Time Cellular Automata Physics Engine with Procedural World Generation
Huayue ZHANG
Software Development
Real-Time Cellular Automata Physics Engine with Procedural World Generation
For my Thesis project, I designed and developed a 2D sandbox physics simulation engine inspired by games such as Noita and The Powder Toy, in which every pixel of the game world functioned as an independently simulated particle governed by Cellular Automata rules.
The engine integrated four concurrent simulation systems. First, I implemented a chunk-based Cellular Automata system supporting multiple material phases, including granular solids, liquids, and static solids, paired with a Newtonian physics layer that handled per-cell velocity integration, momentum transfer, and collision response entirely within the Cellular Automata framework. Second, I built a hybrid rigid body pipeline using Box2D with contour extraction and polygon simplification for dynamic shape conversion between the physics and simulation layers. Third, I developed
a GPU-driven particle effects system built on Compute Shaders, featuring a dead-list allocation scheme and Indirect Draw rendering. Fourth, I constructed a procedural world generation pipeline that combined tile-based constraint propagation with Perlin noise and interpolation techniques for multi-scale terrain synthesis.
The primary goal of this project was to achieve real-time integration of all four systems within a single coherent simulation, where Cellular Automata states, rigid body dynamics, GPU particles, and procedurally generated terrain interacted continuously within a 16.6 ms frame budget. This project deepened my expertise in low-level engine architecture, GPU programming, and real-time simulation design— skills directly applicable to the technical demands of the video game industry.
108 SOFTWARE DEVELOPMENT