This is a gallerie of some of my current and past side projects. Some need polishing, some are not finished and some don't work the way I'd want but it's a good ego boost to keep a list of things I have achieved.
I wanted to create an AI playing simple tracks in Trackmania United Nation Forever. As there is no API I went with a rust application which screenshots the game, check some pixels in the bottom right corner to parse the current speed and which presses some keys on the keyboard to control the car. For now the bot is able to maintain the car at a given speed by pressing and releasing the up arrow key. The next step is to do some ray tracing to detect the borders of the track.
An experiment with Abelian sandpiles. This was pretty quick to implement but I then realized that they are not as interesting as I would have expected.
Demo - Code
A simple Abelian sandpile project used to prepare 'Sandpiles -2'
A very small project with trails of color moving randomly on the screen and avoiding each other. I didn't take time to make it as beautiful as I originally expected.
A 2048 game. The initial idea was to create an AI playing 2048 using a Monte-Carlo algorithm. For now the only 'AI' implemented is random, I'll see if I get back to this project.
A color picker implemented with GLSL shaders
Demo - Code - Article
My second attempt at simulating a colony of ants. This is not completely finished as I need to fix a bug where the ants get stuck in infinite lines
Generate a smooth path between a set of points using Bezier curves. This is an exploration before digging into a racetrack generation project.
Another genetic algorithm experiment, this time trying to control some cars on a racetrack. It would need a better track generation to have more situations to learn from, this is what inspired me the "Bezier experiement" project.
My implementation of the Reversi game with an AI opponent using the min max algorithm.
My implementation of the triomono game with a not very efficient AI opponent.
A breathing exercise to help you relax.
My first attempt at simulating an Ant colony. They go out of the anthill, look for food and use pheromones to get back home and form efficient paths.
Simulating a flock of virtual birds to experiment with emerging behaviors.
My implementation of the famous video game from the 80's Asteroids with my own sound effects as a bonus.
Using several algorithms to generate mazes and then solve them with different methods.
The classic game Minesweeper in your browser.
Using a circle packing algorithm to recreate pictures of kitten.
A cellular automaton framework in the browser: Test different neighboring rules and survival conditions to recreate the Game of Life or discover new automaton.
A very simple game I used to experiment with bouncing and jumping behaviors
My first attempt at using genetic algorithms. Trying to teach a flock of Roombas to reach a target.
A pool with a homemade physics engine.