honey devlog 2

edited September 2022 in Development

So, about that audio business...

The original WAV decoding library I found turned out to be pretty useless -- a lot of it was /* todo */ and the stuff that wasn't was so poorly documented as to be practically unusable. I searched around a bit and eventually found something called miniwav that looked promising. It even had mp3 and ogg cousins! And then I realized that those libraries had been written for a larger project called miniaudio that was more or less what I'd wanted to do with mossrose but better. It's as minimal-dependecy as PortAudio is, but it supports a ton more than my first pass at mossrose, including file decoding, resource caching, and even 3D spatial audio.

honey is now using miniaudio for audio. :tongue:

I've done other things too! I wrote up a first-pass at assimp bindings, and they seem to work just fine. See for yourself:

That's right, you can now view Suzanne in honey!

This is still just a first pass -- it doesn't import materials, transforms, or animations right now -- but it's definitely good enough for rendering mesh data from honey. Once I'm working more on the Lua side of things and have a better sense of how I'm going to design the native honey data format I'll get the rest of that stuff implemented.

As far as basic C bindings go, that just leaves user input, cairo, and ode -- all of which existed in the pre-refactor version of honey and should (knock on wood) be pretty easy to port over. Once they're done, I'm planning on moving into a more iterative cycle of entering game jams with honey, building tools for the jam, and then refining those tools into actual components of honey itself.

Sign In or Register to comment.