Old Python Projects
Overview and History
I got my first real start in programming around early high school, writing lots of code, learning a lot, and occasionally making something (I thought at the time was) worth sharing. Mostly, this was in the Python programming language. I often used Pygame, and later often combined it with PyOpenGL. My experience creating these examples contributed greatly to my programming skill and directly kickstarted my graphics career, even if I have drifted away from the PyGame community in the years since[1].
The overwhelming majority of this stuff is trash, provided for historical interest. Mostly, it is little demos showing the progress of a literal child trying to understand something. However, even as ancient and unrepresentative of my abilities as these programs are, a few of these programs are not just still useful, but are actually unrivaled in the Python graphics programming world, and have not been replicated before or since. They remain as examples of what PyGame and PyOpenGL are able to produce. Although few of these should be considered "supported", I later rewrote some of them to serve as teaching examples or bespoke tools. These are a much higher standard of quality, and so are indicated below (with a ⭐).
I enjoy hearing about where my code shows up! If you find something useful, feel free to contact me and say so! Note: everything here is free for use with attribution.
Projects ListApplications / Tools

2D Wave Interaction Simulator
Demonstrates 2D wave interference and plays the resulting waveform as a sound.
3D Wave Interaction Simulator
Demonstrates 3D wave interference on a mesh.
3D World (⭐)
Basic 3D visualization of the Earth, including plotted points.
Color Chooser
A standalone tool for picking sRGB colors.
Flash Cards
Simple flash card application.
Game of Life (⭐)
A GPU implementation of Conway's Game of Life.
ImplicitGrapher (⭐)
Grapher for 3D implicit functions.
Mandelbrot Set Generator
Generates a simple image of the Mandelbrot set.
Mandelbrot Set Viewer (⭐)
Interactive viewer for the Mandelbrot set.
Map Editor (⭐)
A rudimentary heightmap editor.
notepad-- (⭐)
A text editor so bad it can't even edit.
Off-Center Map Projections (⭐)
Generates maps centered / rotated around different points than usual.
Snowflake Generator
A simple editor for drawing six-sided snowflakes.
The Grapher
Basic function plotter.
Ray-Tracer
Basic triangle mesh raytracer.
Sphere Ray-Tracer
Basic sphere raytracer.
Slide Rule
A slide rule.
Games

3D Projective Tic Tac Toe (⭐)
A variant of 3D tic tac toe where the pieces project into 2D.
3D Tile Puzzle
3D sliding tile puzzle.
Asteroids I
A surprisingly decent Asteroids game.
Asteroids II - The Vector (⭐)
Another surprisingly decent Asteroids game.
Battle for Planet Vector
A vector space survival game.
bblock (⭐)
A simple game of tapping blocks.
Bridge
Cross the lava bridge.
Create (⭐)
A recursive art "game".
Finger Game Oracle (⭐)
An oracle for solving the "finger game" / "chopsticks" hand game.
Fission
A simple game about preventing runaway nuclear fission.
Marble Madness (⭐)
Let's face it—you're a marble.
MiniTank
Simple blob-destroying survival game.
Pente
An ancient and incomplete Pente game.
Ping Pang Pong (⭐)
Everyone needs a pong clone.
Robot War
Rudimentary tank driving game.
Spacewar
Bad spacewar clone.
Spacewar Multi
Online spacewar clone in a maze.
Libraries

OpenGL Library (glLib*)
My first attempt at a fixed-function OpenGL graphics library.
Shader OpenGL Library
Second-generation OpenGL library. Uses shaders.
glLib Reloaded
Advanced OpenGL graphics library.
Mastermind Networking Library (⭐)
A decent, basic networking library.
Perlin Noise
Perlin noise test.
Pygame Advanced Graphics Library (PAdLib) (⭐)
Library for 2D graphics effects.
Settings
Fake GUI for noobs, by noob.Some libraries formerly here were C++ libraries, and have been moved here.
Physics / Collision / Simulation

Circle Refract
Refract a beam through a grid of spheres.
Field Intersections (⭐)
Visualization tool for 2D \(r^2\)-falloff fields.
Fracture
Basic physics simulation of breakable structures.
Gravity Simulation
A simple n-body simulation.
Gravity Situation
An n-body simulation where the central object suddenly explodes.
Circle Collisions
Test of circle collisions and response.
Sphere Collisions
Test of sphere collisions and response.
Effects / Tech Demos

Antialias
Fake antialiasing by filtering images.
MIDI Mandelbrot (⭐)
Converting the Mandelbrot Set to sound.
Realtime CPU Cloth (⭐)
CPU-based, basic cloth simulation.
Realtime Cubic Reflection Mapping
Fixed-function cubemapping.
Circles of Influence
When you don't know what Voronoi is.
3D Rotations
Testing 3D rotations.
Frustum Culling
Test to try to figure out frustum culling.
Miscellaneous

Hyperbola Bar (⭐)
Demonstration that a bar can be rotated through a hyperbola.
Parabola
Interactive parabola.
Countdown
Countdown timer demo.
Honeycomb
Just a 3D honeycomb.
Applications / Tools

2D Wave Interaction Simulator

3D Wave Interaction Simulator

3D World (⭐)

Color Chooser

Flash Cards

Game of Life (⭐)

ImplicitGrapher (⭐)

Mandelbrot Set Generator

Mandelbrot Set Viewer (⭐)

Map Editor (⭐)

notepad-- (⭐)

Off-Center Map Projections (⭐)

Snowflake Generator

The Grapher

Ray-Tracer

Sphere Ray-Tracer

Slide Rule
Games

3D Projective Tic Tac Toe (⭐)

3D Tile Puzzle

Asteroids I

Asteroids II - The Vector (⭐)

Battle for Planet Vector

bblock (⭐)

Bridge

Create (⭐)

Finger Game Oracle (⭐)

Fission

Marble Madness (⭐)

MiniTank

Pente

Ping Pang Pong (⭐)

Robot War

Spacewar

Spacewar Multi
Libraries

OpenGL Library (glLib*)

Shader OpenGL Library

glLib Reloaded

Mastermind Networking Library (⭐)

Perlin Noise

Pygame Advanced Graphics Library (PAdLib) (⭐)

Settings
Some libraries formerly here were C++ libraries, and have been moved here.
Physics / Collision / Simulation

Circle Refract

Field Intersections (⭐)

Fracture

Gravity Simulation

Gravity Situation

Circle Collisions

Sphere Collisions
Effects / Tech Demos

Antialias

MIDI Mandelbrot (⭐)

Realtime CPU Cloth (⭐)

Realtime Cubic Reflection Mapping

Circles of Influence

3D Rotations

Frustum Culling
Miscellaneous

Hyperbola Bar (⭐)

Parabola

Countdown
