Virtual Piano

Virtual Piano is a piano simulator that uses ray marching and SDFs to render a playable piano. It was my final project for CSCI 371: Computer Graphics. The user plays the piano with their computer keyboard. They can choose from multiple different sound options, so the piano can also be used to simulate a clarinet, mandolin, or violin. There is also an 'autonomous mode', where the piano will generate its own 100% original music (n.b. the music might not sound very good). There's also a simulation of a spotlight moving across the piano. Check out the demo video below to see it in action.

View on GitHub