Show HN: I built a synthesizer based on 3D physics (anukari.com)

512 points by humbledrone ↗ HN
I've been working on the Anukari 3D Physics Synthesizer for a little over two years now. It's one of the earliest virtual instruments to rely on the GPU for audio processing, which has been incredibly challenging and fun. In the end, predictably, the GUI for manipulating the 3D system actually ended up being a lot more work than the physics simulation.

So far I am only selling it direct on my website, which seems to be working well. I hope to turn it into a sustainable business, and ideally I'd have enough revenue to hire folks to help with it. So far it's been 99% a solo project, with (awesome) contractors brought in for some of the stuff that I'm bad at, like the 3D models and making instrument presets/videos.

The official launch announcement video is here: https://www.youtube.com/watch?v=NYX_eeNVIEU

But if you REALLY want to see what it can do, check out what Mick Cormick did with in on the first day: https://x.com/Mick_Gordon/status/1918146487948919222

I've kept a fairly detailed developer log about my progress on the project since October 2023, which might be of interest to the hardcore technical folks here: https://anukari.com/blog/devlog

I also gave a talk at Audio Developer Conference 2023 (ADC23) that goes deep into a couple of the problems I solved for Anukari: https://www.youtube.com/watch?v=lb8b1SYy73Q

127 comments

[ 3.0 ms ] story [ 215 ms ] thread
Whoa this looks really cool! I love how you made something physically 3D to stand out in a world full of 2D knobs and sliders… but it still has 2D sliders because those work the best for dialing things in with precision.
Very neat!

Is the simulation deterministic?

Yep! I have a lot of unit/integration tests that were a lot easier to write and more reliable by making the simulation fully-deterministic. It does produce slightly different results on different GPUs due to small differences in the FP operations. (For this application it's really beneficial to let the compiler go crazy with FP re-ordering to get speed.)
does it benefit from or even require top end GPUs to get the best results?
I've been able to run it on an Intel laptop with integrated video. I haven't been able to test the most complex models / presets, I might give that a shot this weekend and see where it falls apart.
mutagen sums up my experience pretty well -- I have tested it on a laptop with a pretty wimpy Intel Iris chipset and it definitely works, but you might be limited in terms of how complex of a preset you can run. But there is a LOT of fun to be had with small presets so it may still be worthwhile. Be sure to install the absolute most up-to-date drivers from Intel directly, and use a larger buffer size.
It definitely looks really cool! As an outsider to the audio stuff with an okay amount of knowledge I’m curious as to the workflow for sure
Cool idea. Sounds like AAS Chromaphone on steroids.
(comment deleted)
Absolutely awesome! I know nothing about music production but I want to play with it just for fun. Maybe a very simplified, web-based version for people who just to play a bit? Would be awesome.

Congrats on the hard work and the launch, in any case!

Edit: I see you have a demo mode, that's great! Exactly what I was looking for

This is so cool.
(comment deleted)
Thank you for this, it looks very cool!

Remind me of Korg's Berlin branch with their Phase8 instrument: https://korg.berlin/ . Life imitates art imitates life :)

I highly support and encourage this. Is there a way I could contribute to Anukari at all (I'm a physicist by day)? These kinds of advancements are the stuff I would live for! However I should stay rooted in what's possible or helpful: I'm not sure if this is open-source for example. As long as I could help, I'm game.

For the foreseeable future I'm just going to be working on stability/performance, but eventually I will get back to adding more cool physics stuff. It's not open-source, but certainly I'd enjoy talking to a real physicist (I'm something a couple notches below armchair-level). Hit me up at evan@anukari.com sometime if you like!
Thanks, will hit you up later!

I was using the demo just now: the sounds you get out of this are actually better than I expected! And I see what you meant in the videos about intuitive editing, rather than abstract.

Although, I was often hitting 100% CPU with some presets, with the sound glitching accordingly. So I could experiment only in part. I'm on an M1 Pro; initially I set 128 buffer sample size in Ableton but most presets were glitching, I then set to 2048 just to check for improvement, which it did, nevertheless it does seem a bit high. Maybe my audio settings are incorrect? I can give more info later if it helps you.

Yeah performance at low buffer sizes is a big challenge, generally I recommend 512 or higher, which I know is not great but right now it's the most practical thing. The issue is that the computation is all done on the GPU, and there's a round-trip latency that has to be amortized. One day I'd like to convince Apple to work on the kernel scheduling latency...
Not sure I'll ever use this as it seems like a lot of work but wanted to say thank you for allowing me to download a demo without giving an email.

Also, even though I said I wouldn't use it, something that would be nice is a master volume, maybe I missed it. I often use VSTs standalone and being able to change the volume without messing with the preset would make it a bit easier to use.

Definitely the most interesting synth I've ever seen.

Thanks, yeah, it really should have master volume -- you didn't miss it, it's just not there yet!
(comment deleted)
Any chance we'll get a Linux VST or CLAP?
Linux: I very much want to do this, but unfortunately it's lower priority than getting things rock-solid on windows/mac. It's not a gigantic amount of work, but it's not trivial. Hopefully I can do it once things calm down with the Beta.

CLAP: I'm using the JUCE framework for plugin integrations, which doesn't currently support CLAP. But their roadmap says that the next major version will support CLAP, and I will definitely implement that in Anukari. Not sure when JUCE 9 comes out though, it could be a while.

Hopefully they make it easy. WINE has some issues with JUCE 8 I think.

It seems like vst problems with WINE always comes down to issues with license auth and graphics libs.

I like the look of this, do you have any plans to release it for iPad?
The thought has definitely occurred to me. It's always been in the back of my mind on the "if it shows some success..." list. Glad to hear there's interest, I think it would be really fun if I implemented proper multi-touch. There are some other details I'd need to think through, though, since right now it mostly assumes you have a MIDI keyboard, but on an iPad it's just begging for touch controls for a lot of that stuff.
I'd focus on ipad & an awesome multitouch experience. App store sales are easier & i'd bet apple would spotlight it.
Amazing, I do all my music on an iPad simply because if I open my laptop work will materialise. Now that I've put the idea in your head though, I think it's probably my duty to warn you that the market is a tiny fraction of the desktop market.
The website should have a better youtube video and at the beginning
You are 100% correct. It turns out that I am an OK engineer, and a terrible marketer. There is a LOT that I need to improve on the site and the videos.
Some little audio examples would also be nice so visitors don't have to scroll through the video to hear them.

Still, awesome work!

Yeah, all the cool 3D pictures should play demo videos on click!
Every one of those pretty-looking screenshots should have a play button with a few seconds of audio. It's really strange to market a synthesiser with visuals instead of sound.
Yes, it's a synthesizer -- you may know it inside and out, but having demo videos showing what it can do will help people with no context get that quick "ahhh, that makes sense" moment from things. :)
>a terrible marketer

I wouldn't go so far, apart from this point the landing page is excellent.

Wow. This is so cool. It opens up a different approach to the problem.
Incredible work and a very creative product. I can't wait to see what is created using Anukari.
Ha! I've had this idea for ages but never had the urge to make it. I'll have to play with it, thanks for sharing!
I second the recommendation: even if you don't have a Twitter/X account, find some way to watch Mick Gordon's session!

I find it hysterically funny, but at the same time, it really shows what this synth is capable of.

Excellent!

Dang it. I am working on the same thing, but in 2D.
Don't be discouraged! It might even be that 2D is better than 3D in this case: it's all about how it sounds, right? And if a 2D simulation can be less expensive than a 3D while sounding just as good or better, it works in your favour!

I think that's the real key to this stuff: what makes these things actually sound good?

I think 2D is probably the better move for this thing. 3D doesn't really open many possibilities that you can't do in 2D, and it adds loads of UI awkwardness.
There are a lot of advantages to 2D -- you could simulate more objects and more complex interactions with the lesser computational demands, and as other comments say, it will likely be way easier to build a better GUI. Think about how many compressor VSTs there are out there, and still people keep making them! And a 2D Anukari could be much more different from 3D Anukari than most compressors are from one another.
This reminds me of the reverse, where music drives 3D animations. I remember Animusic from the early decade of 2000.

https://en.wikipedia.org/wiki/Animusic , https://www.animusic.com/ , https://www.youtube.com/results?search_query=animusic , https://www.youtube.com/@julianlachniet9036/videos

I have the first two Animusic reels (vhs and dvd) and thought they were great. Unfortunately, the creator scammed people by taking money for Animusic 3 and then not making anything.

Most of them are on youtube.

I'm a huge fan of Animusic. I remember seeing it for the first time in some big fancy mall in LA and they had it projected on a wall, and I was blown away. It was absolutely an inspiration! Animusic -type ideas are a big part of why I made the 3D graphics fully user-customizable, for anyone who wants to go deep down that rabbit hole.
This rings such a vague and distant bell...

I'm several videos in and totally hooked, thank you for sharing. This would be an amazing interactive music app in VR, both to perform and to record trippy music videos.

Hey evan Just wondering, can you import 3d models into this envireonment? Im still pining for a less "code" driven environment for this than max/msp modalsys.
You can replace all the 3D models and skyboxes. Everything is in open formats, wrapped up in zip files. See:

https://anukari.com/support/faq#custom-skyboxes https://anukari.com/support/faq#custom-skins

AFAIK nobody has attempted this yet, so the write-up might not be perfect. If you try it, let me know how it goes!

Awesome, say i import a bugle model, for arguments sake, does anakuri support a wind stream? I dont see air/wind listed as an object like you see bow and pluck
No wind-type model so far, though the bow model can do some rather flute-y sounds (in fact for the current bow model, I might even argue that it is better for pan flute stuff than sounding like a realistic bow).
Thanks Evan, is that because wind models are complex to model?
Honestly I just haven't given wind models much thought yet! Long-term once it's stable and fast everywhere, I look forward to adding more physics features, and this is the kind of thing I'd love to look into.