Cartoon drawing of my face

Jake Mitchell

@jakemitchellxyz

Orbital simulation
Earth rendering
Earth surface detail
Moon rendering
Mars rendering
Voxelized terrain

Von Neumann Toy

GitHub Repo

A real-time space simulation of autonomous von Neumann probe swarms competing for resources across a physically accurate solar system. Multiple factions of self-replicating drones mine asteroids, establish supply chains, and evolve strategies against each other through generational evolutionary algorithms, all rendered in a custom Vulkan engine.

Rendering Architecture

The most technically distinctive aspect of this project is the rendering pipeline: the entire scene (planets, moons, asteroids, drones, gas clouds) is rendered using only 2 screen-space quads. There is no traditional mesh geometry submitted to the GPU. Instead, every object in the scene is described mathematically as a Signed Distance Field (SDF), and a Vulkan fragment shader performs cone marching across those fields to resolve intersections, normals, shadows, and lighting entirely on the GPU.

This fully virtualized geometry approach means:

  • Zero vertex buffer uploads per frame regardless of scene complexity
  • Sub-pixel accurate silhouettes and smooth lighting without tessellation
  • Cheap analytical normals from SDF gradients instead of normal maps
  • Physically Based Rendering (PBR) with essentially no geometry bottleneck

Simulation

Each drone is modeled as an independent agent with a component-based hardware architecture (CPU, solar panels, propulsion jets, fuel tank, mining drill, smelting furnace, communications laser, radar, and additive manufacturing units). Their decision-making is driven by a layered stack of state machines, decision trees, and knowledge graphs, with collective behavior emerging from swarm intelligence search algorithms and convolutional neural networks. Competing swarms evolve over generations using evolutionary algorithms, producing organic supply chains and resource wars without scripted behavior.

The physics layer simulates classical gravity and rigid body dynamics. Drone-to-drone communication uses a decentralized zero-knowledge-proof consensus protocol to coordinate without a central authority, mirroring how a real von Neumann swarm would have to operate across light-delay distances.

Scientific Datasets

The solar system is populated with data from a suite of authoritative scientific sources to achieve realistic conditions:

DatasetPurpose
JPL Horizons SPICEPlanetary and lunar positions
Hipparcos 2Star catalog for the celestial skybox
SuperNOVASAstrometric computations
ETOPO 2022Earth surface elevation / topology
Blue Marble Next GenerationEarth surface color
NOAA-20 VIIRS Black MarbleCity lights (night side of Earth)
Terra MODIS 3-6-7Earth surface reflectance
RSS CCMP v3.110m surface wind patterns
WMM 2025Earth magnetic field (high resolution)
SimpleMaps World CitiesEarth economic simulation

Tech Stack

C++ · Vulkan · GLSL · CMake · vcpkg · SDF / Cone Marching · PBR · Rigid Body Physics · Swarm Intelligence · Evolutionary Algorithms · Convolutional Neural Networks · Zero-Knowledge-Proof Consensus · State Machines / Decision Trees / Knowledge Graphs