Unknown
For the 2024 GMTK Game Jam, I decided I wanted to make a game about folding paper. The idea was that you would start with a piece of paper and make up to 10 folds to create a paper airplane which would then be thrown. There was then going to be a little physics simulation of the flight, and players would be scored on how well theirs flew. Suffice to say, I was overscoped for the 48 hour jam, as we are all wont to do.
It's written in pure typescript with Vite for the bundler and THREE.js for the 3D stuff. During the jam, I was able to get a single white sheet of paper to make a single fold. People found it surprisingly addictive, and I ended up in the top third of games in the jam. After the jam I cleaned it up and developed a bit more. Here's a demo:
This version includes several improvements over the original submission:
This demo is also what's powering my Contact page. I added support for text/icons via a Multi-channel Signed Distance Fields (MSDF) shader and then hooked up a few small conveniences like matching the back to the selected accent color, or automatically zooming to fit the window.
Unfortunately for now the project is on hold. It turns out dealing with multiple folds is exponentially more complex than just a single one. The main culprit is dealing figuring out which paper sections (facets) participate in the fold, and any obstacles that prevent a fold from passing some point. The number of different cases to handle has thus far been out of my reach. If you are familiar with computational origami and how it might apply here, please contact me! I'd love to pick your brain!