Hello everybody,
We are excited to announce that a JUCE 8 preview is available now on the juce8
branch of our public repository:
Please take this opportunity to try out the new features, and use this thread to provide any feedback.
JUCE 8 will also come with some important changes to the End User Licence Agreement. For more information, and to ask any questions related to licensing, please use the dedicated thread here:
A high level overview of the key features of JUCE 8 can be found on the JUCE website, but the information is also provided below to save everyone a few clicks.
JUCE 8 proudly doubles down on cross-platform C++ UI, bringing serious low-level enhancements to text rendering, a blazing fast Direct2D renderer on Windows and a brand new animation framework.
On top of this deep investment into traditional UI, the JUCE team unlocks an exciting new paradigm in audio software interfaces: WebViews.
WebView UI
JUCE 8 comes stocked with all the cross-platform glue code and tooling you need to build UIs with your favorite web framework. Iterate plugin UIs faster than you thought possible, with web tooling you already know and love. Onboard frontend web devs to your C++ audio products. Gain instant access to cross-platform hardware accelerated graphics via WebGL. The World Wide Web is your oyster, just BYOW (Bring Your Own Widgets).
Learn more: JUCE 8 Feature Overview: WebView UIs - JUCE
Improved Unicode Support
What do we want? Consistent text rendering across platforms! When do we want it? Emoji!
Months of research. Alignment with current industry best practices. A new custom renderer. Cross-platform tests. Painstaking attention to backwards compatibility. More than 2-person years of time were invested into re-plumbing the depths of low-level text rendering. We could go on, or leave it at
Learn more: JUCE 8 Feature Overview: Unicode - JUCE
New Animation Module
JUCE 8 sports a brand new, fully-featured animation module. Whether you want to add sprinkles of delight to your UIs or build complex graphs of instersection animations, an expressive API makes it easy to get started. Sync to hardware refresh rates and pick from a familiar set of standard easings. You’ll be cooking up buttery smooth animations in no time.
Learn more: JUCE 8 Feature Overview: Animation Module - JUCE
Direct2D
Windows gets a major upgrade. The Direct2D renderer was nursed back to life by a dedicated JUCE community member and brought over the finish line with help from the JUCE team. Built on modern native platform APIs and taking advantage of hardware acceleration and GPU-backed images, it brings significant rendering and performance improvements. Expect all the basics such font rendering to be better AND faster.
Minimum Requirements
For Developers (Compiling)
- C++ Standard: 17
- MacOS/iOS: Xcode 12.4 (Intel macOS 10.15.4, Apple Silicon macOS 11.0)
- Windows: Visual Studio 2019 (Windows 10)
- Linux: g++ 7.0 or Clang 6.0 (for a full list of dependencies, see here).
- Android: Android Studio (NDK 26) on Windows, macOS or Linux
For End Users (Deployment Targets)
- macOS: macOS 10.11
- Windows: Windows 10
- Linux: Mainstream Linux distributions
- iOS: iOS 12
- Android: Android 5 - Lollipop (API Level 21)
Anyone trying out JUCE 8 should also read through the breaking changes document, as there are several related to text rendering to facilitate the new unicode renderer. We have also removed support for MinGW.
We have also been working with Avid to allow us to bundle the AAX SDK with JUCE. Not only will this make the compilation of AAX plug-ins easier, it will also allow us to discuss the contents of the bundled SDK on the JUCE forum without worrying about the restrictions of the AAX SDK licensing agreement. This hasn’t made it into the initial JUCE 8 preview branch, but we anticipate adding it shortly.
Finally, I would like to thank @matt yet again for his outstanding, and extensive, work on the new Direct2D renderer, along with everyone who has been helping Matt benchmark several different iterations of the renderer in their software. Working with Matt has been fantastic, and the new renderer is the culmination of multiple years of work (the JUCE team’s involvement has only been towards the end of this).