3 ms·
One of the cool aspects of this demo is that it is open source. Not many demos are, in fact, most are not. Some technical aspects are revealed in talks and work
by 29athrowaway 6y ago
One of the cool aspects of this demo is that it is open source. Not many demos are, in fact, most are not. Some technical aspects are revealed in talks and workshops, but rarely the source is given.
The music is done with a shader, which is in itself insane.
https://github.com/FMS-Cat/condition/blob/dev/src/music/music.vert https://github.com/FMS-Cat/condition/blob/dev/src/music/musi...
- pjmlp 6y agoNot that insane actually, https://www.musictech.net/guides/essential-guide/how-fm-synthesis-works/ https://www.musictech.net/guides/essential-guide/how-fm-synt... https://github.com/askeksa/Cinter https://github.com/askeksa/Cinter Going into more modern examples, https://docs.microsoft.com/en-us/windows/win32/xaudio2/xaudio2-introduction https://docs.microsoft.com/en-us/windows/win32/xaudio2/xaudi... "Realtime GPU Audio" - https://queue.acm.org/detail.cfm?id=2484010 https://queue.acm.org/detail.cfm?id=2484010 Because WebGL doesn't expose compute shaders, one is stuck misusing the vertex shader for the same purpose.
- londons_explore 6y ago> The music is done with a shader, which is in itself insane. I don't really see any advantage/disadvantage to doing music with a shader Vs CPU. No modern CPU would struggle with the computation for this code, and nor would a GPU. It seems it's just a matter of the programmer being more familiar with the world of graphics.
- postalrat 6y agoI've heard a GPU synth can be smaller. Not familiar with them enough to know exactly why.