| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
iPlug2 port in progress. A re-port of Overdraw onto the iPlug2 framework — with a modernized GUI (GPU-accelerated via NanoVG / Metal) and CLAP support alongside AU + VST3 — lives on the iplug2-port branch. See that branch's README for build instructions specific to the iPlug2 build. This master branch hosts the shipping JUCE-based version described below.
Overdraw is an audio plug-in that implements a waveshaper in which the transfer function of each channel is an automatable spline.
Pre-built binaries:
Clone recursively:
git clone --recursive https://github.com/unevens/Overdraw
Overdraw uses the JUCE C++ framework, referenced as a sibling checkout at ../JUCE. Clone JUCE 8 next to this repo before building.
The authoritative build is CMake (CMakeLists.txt at the repo root). The old Projucer .jucer file has been removed — see git history if you need it.
Apple's bundled Clang (Xcode 17, Command Line Tools 21) and any upstream Clang older than 22 hit a NEON-intrinsic codegen bug in Source/OverdrawDsp.cpp. The fix shipped in upstream LLVM 22, so build with Homebrew Clang ≥ 22:
brew install llvm cmake -S . -B build \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_C_COMPILER=/opt/homebrew/opt/llvm/bin/clang \ -DCMAKE_CXX_COMPILER=/opt/homebrew/opt/llvm/bin/clang++ cmake --build build -j8
CMakeLists.txt enforces this — configuring with Apple Clang or any clang older than 22 fails immediately with a message pointing at the right compiler. It also auto-derives llvm-ar / llvm-ranlib from the chosen compiler's toolchain dir.
This produces Standalone, AU, and VST3 in build/Overdraw_artefacts/Release/. The plug-ins are also copied to your user plug-in folders for an immediate DAW reload:
| Option | Default | Description |
|---|---|---|
| UNIVERSAL | ON | Build a universal arm64+x86_64 binary so a single zip serves both Apple Silicon and Intel users. Disable with -DUNIVERSAL=OFF for ~2x faster single-arch dev iteration. |
| INSTALL_TO_USER_PLUGINS | ON | Copy AU/VST3 to ~/Library/Audio/Plug-Ins/* after build. Disable with -DINSTALL_TO_USER_PLUGINS=OFF for CI builds or when you don't want the build to touch your live plug-in folder. |
cmake --build build --target package-zip produces both a staging folder and a ready-to-upload zip:
build/release-zip/ ├── Overdraw1.2_mac/ │ ├── Overdraw 1.2.component │ ├── Overdraw 1.2.vst3 │ ├── legal/ │ └── README.txt └── Overdraw1.2_mac.zip
The platform suffix becomes _win / _linux when built on those hosts.
The CMake build is cross-platform via JUCE's juce_add_plugin. Windows is the next platform to be re-validated since the migration off Projucer. Adapt the cmake invocations above for MSVC, build, and please report any breakage.
The Linux build worked under the old Projucer setup but is not actively tested right now. The CMake setup should be cross-platform via juce_add_plugin, but expect to fix things if you build there. PRs welcome.
Overdraw is released under the GNU GPLv3 license. Full license text and third-party notices are in the legal/ folder.
VST is a trademark of Steinberg Media Technologies GmbH, registered in Europe and other countries.
| Back | FazBrowse Home | New Git URL |