Flame Fractals in GLSL: Chaos-Game Splatting, Transforms, and Simple Post
Read ArticleRead Original Articleadded Sep 10, 2025September 10, 2025

The article demystifies flame fractals by framing them as a chaos-game loop implemented on the GPU with atomic density accumulation. It outlines practical GLSL techniques for splatting, memory qualifiers, transform design (affine + sphere inversion), and simplified color/tonemapping. It finishes with tips for depth of field and motion blur, encouraging creative exploration.
Key Points
- Flame fractals can be rendered via a chaos-game approach: advance many points through random transformations and accumulate hit density per pixel.
- Use atomic operations (imageAtomicAdd on an r32ui image) to safely accumulate counts across parallel shader invocations, with GLSL qualifiers like coherent and restrict for correctness and performance.
- Effective transforms often mix affine operations with sphere inversion (conformal mapping), producing intricate, self-similar structures.
- A simple rendering pipeline scales density by total splats, colors via a procedural palette (e.g., Inigo Quilez), and applies an HDR-to-LDR tonemap (e.g., Reinhard).
- Depth of field and motion blur can be achieved by jittering splat positions (disk sampling) and dithering time within the transforms for artistic anti-aliasing.
Sentiment
Neutral/undetermined; there are no comments to infer agreement or disagreement.