This project was featured on the jam recap stream. Here's the final demo video I made for that stream. It goes into more detail about how the editor works.
I'm happy to say I accomplished my main goal for the jam: to implement a song editor with enough functionality to make songs on the Playdate itself (previously I had been writing them out note by note in code). There's a demo of the editor here: https://handmade.network/snippet/2520 I uploaded the final build here: https://handmade.network/snippet/2519
As my final jam update, here's a song I just made with the editor over about 45 minutes (yes I got a hand cramp!). &organette
My main goal for the jam was to implement an editor sufficient to make compositions on the playdate itself. Here's a simple demo of the editor in action: https://vimeo.com/870213926
I'm uploading my final build for the Wheel Reinvention Jam here. It's a zipped .pdx file, which can be sideloaded on a physical Playdate or opened with the free Simulator included in the sdk (I used SDK version 2.0.3).
I'll post a demo of it soon!
I was feeling low energy this evening, so I just let myself do some easy and satisfying tasks rather than pushing on the edit UI. I got the tracks properly sorted by pitch, fixed the audio clipping on chords, added support for multiple songs and a menu to switch between them, and hand-transcribed another song for fun. The fixed audio clipping really makes it much more pleasant to interact with. &organette
This is now producing sounds similar to music I like! My goal for the jam is to be able to edit and compose a song like this on the device itself, rather than in code.
I also automated the process of uploading and running the build on the device, so I'm now able to iterate pretty quickly. Need to figure out how to keep big chords from blowing out the speaker. &organette
After 90 minutes of mostly SDK wrangling, &organette can play a (very) small subset of all possible songs.
My software renderer now does texture mapping. I have to say, as soon as skin and human faces are involved, graphics work really plummets straight into the uncanny valley!
I've been writing a 3D software renderer for the first time and really enjoying getting an understanding of how rendering APIs are roughly working behind the scenes.
I visualized the depth buffer and noticed something was off (left). Turns out I was computing the barycentric coordinates incorrectly! Fixed that and now it's all smooth (right).