I wrote ampli-Fe, which is the world's first fully cross-platform graphical VST plugin written in Rust. It's just a volume knob, but the code is well-documented and freely-licensed, so it's a great starting point for any other kind of Rust VST plugin.
ampli-Fe uses the vst_window
crate to create a wgpu
-compatible drawing surface.
vst_window
handles all platform-specific code, so ampli-Fe doesn't need any #[cfg(...)]
attributes to gate by platform!
There's only a single statement of unsafe
code required to transfer the window handle to wgpu
, but it looks like this is being worked on upstream.
If you're interested in learning more, check out the README and doc comments in the repository.