fractal_sugar is an experimental audio visualizer combining fractals and particle simulations. It is cross-platform, written in Rust, and uses the library Vulkano to interact with the Vulkan API. 3D fractals are rendered using the technique of ray-marching. Particle physics are simulated using compute shaders. The open source library CPAL is used to retrieve the audio stream and a fast Fourier transform is applied on the signal using RustFFT.
fractal_sugar is a merger and re-implementation of several of my previous OpenGL/Vulkan audio visualizers written in F#:
Key | Action |
---|---|
App-Window | - |
F11 | Toggle window fullscreen |
ESC | If fullscreen, then enter windowed mode. Else, close the application |
ENTER | Only Windows release builds: Toggle the visibility of the output command prompt |
Overlay-Window | - |
F1 | Toggle visibility of this Help window |
C | Toggle visibility of the App Config window |
Audio | - |
R | Toggle the application's responsiveness to system audio |
Visuals | - |
SPACE | Toggle kaleidoscope effect on fractals |
J | Toggle 'jello' effect on particles (i.e., the fixing of particles to a position with spring tension) |
P | Toggle the rendering and updating of particles |
H | Toggles whether to hide stationary particles |
CAPS | Toggle negative-color effect for particles |
D | Toggle between 2D and 3D projections of the particles |
TAB | Cycle through particle color schemes. Requires that all overlay windows are closed |
0 | Select the 'empty' fractal |
1-6 | Select the fractal corresponding to the respective key |
MOUSE-BTTN | Holding the primary or secondary mouse button applies a repulsive or attractive force, respectively, at the cursor's position |
MOUSE-SCRL | Scrolling up or down changes the strength of the cursor's applied force |