@Christoph-Hart I asked GPT a while ago, so I just did it again with Claude:
Trustability: 92%
JUCE 6 (and prior)
- Default renderer is purely CPU-based (software rasterizer). Vector-based drawing means significant CPU math per frame.
- OpenGL was optionally available via OpenGLContext::attachTo(), but it was opt-in and not the default.
JUCE 8
- Introduced a Direct2D renderer on Windows as the new default — this is GPU-accelerated via native Windows APIs with GPU-backed images.
- macOS uses Metal (also GPU-accelerated via native API).
- The software (CPU) renderer still exists as a fallback.
Performance delta
- The Direct2D renderer is built on modern native platform APIs, taking advantage of hardware acceleration and GPU-backed images, bringing significant rendering and performance improvements — including better and faster font rendering. JUCE
- Component transforms and tiled image fills show the biggest wins. On some older machines with integrated GPUs only (no dedicated VRAM), the software renderer can actually outperform Direct2D. JUCE
I didn't know Direct2D could in some cases not bring better performances. Do you think it is the same for Metal?
But still, using Win's Direct2D or mac's Metal is deporting the weight to the GPU so this should (perhaps for more usual plugin cases that don't have the complexity of Hise) be faster, am I not right?
But following Juce:
On some older machines with integrated GPUs only (no dedicated VRAM), the software renderer can actually outperform Direct2D
So yeah, might or might not be better on everything...




