Game Dev Engine #14. X-Fractal Recursion.

Опубликовано: 10 Август 2026
на канале: Jason Doucette
1,131
19

2023-11-18. Real-time generation of a recursive fractal, computed on the CPU for the fractals, colors, and 3D transforms: rotation & perspective. No GPU used here except to show the pixels.

DISCOVERY

In the middle of generating a Menger sponge fractal, using a recursive generation, I ended up making this fractal. I cannot find existing work that replicates this, so I believe I've invented a new fractal. I am calling it the "X-Fractal" due to the X pattern that it creates. Also it is fitting for the name Xona -- the name of my video game company, Xona Games, and of his engine that renders it, the Xona System 8.

VICSEK FRACTAL

The Vicsek fractal is a generalized form of this, usually being done in a 2D cross: Split the original square into 3x3, keeping the 5 squares that form a cross. You can extend this into 3D. X-Fractal is where you keep the corners, and the center of each 4-corner, to make an X.

X-FRACTAL

X-Fractal maintains the X pattern on each 3x3 face (of the 3x3x3 cube), and continues the alternate on/off pattern for the remaining inner cube, which is left "on". (Again, recursively iterate to infinity for self-similarity; thus the fractal pattern.) Another creation pattern is merely to alternate on/off patterns for each cube that touches another. That is - no two cubes touch.

COLORING

The 8 origin points have set colors, and proximity to them define the colors of the fractal's individual points. When on an origin point, the color is 100% determined by that point. If in the center (equidistant from all), then it will be mixture of all.

XONA SYSTEM 8

For what it's worth, I'm still designing and implementing the Xona System 8 engine -- which is a game development engine. I'll be creating little graphic demos like this, but it's not really showcasing the engine until I start making games. I'm currently in the middle of the following: Entity Component System, Game Object System, Object Pool System, Animation System.

All of these are tied together quite well, and are the foundation of easy-to-create, behavioural re-use, game sub-systems that allow a basic game to be created from scratch in less than a day. The plan forward is to implement my other retro engines (tile, parallax, road, voxel, shmup, ray cast) sub-engines to live in thin layer above this to allow a sub-24-hour development cycle for a core game prototype to be developed in any of them.

AUDIO

Easy Lemon 60 Second by Kevin MacLeod
Licensed under Creative Commons Attribution 4.0

Playlists:
--------------
Xona System 8:    • Game Dev Engine #1. A New Beginning.  
Voxel:    • Voxel Engine #8 - Correct Peripheral Disto...  
Ray Cast:    • 3D Ray Casting Engine: #4 (Global Game Jam...  
Graph-All:    • #1 Graph-All Equation Renderer - Multiple ...  
Scroll Shmup:    • The First Pixel: Devlog #9 - Enemies, Anim...  
Road:    • Pseudo 3D Road #8 - infinite vegetation, t...  
Arena Shmup:    • Arena Shmup Demo #3 - Object Pool Optimiza...  
Wave Function:    • A.I. Texture Generation, High Res (Wave Fu...  
3D Polygon:    • 3D Polygon Engine #9 - Multiple Materials,...  
GW-BASIC:    • GW-BASIC - Escape From Monster Caverns - C...  

Websites:
---------------
GitHub: https://github.com/JDoucette
Blog: http://thefirstpixel.com
Studio: http://xona.com