A Decade of Magnum
On 19th December 2010, Magnum saw its first commit. A bunch more commits happened since then and I learned some things along the way.
On 19th December 2010, Magnum saw its first commit. A bunch more commits happened since then and I learned some things along the way.
Redesigned geometry pipeline together with massive additions to importer plugins, new debugging, visualization and profiling tools, new examples including fluid simulation and raytracing, instancing in builtin shaders and a gallery of cool projects to get inspired from.
The new release brings Python bindings, Basis Universal texture compression, improved STL interoperability, better Unicode experience for Windows users, a more efficient Emscripten application implementation, single-header libraries, new OpenGL driver workarounds and much more.
During the past four months, Magnum began its adventure into the Python world. Not just with some autogenerated bindings and not just with some autogenerated Sphinx docs — that simply wouldn’t be Magnum enough. Brace yourselves, this article will show you everything.
Similarly to the pointer and reference wrappers described in the last article, Magnum’s array views recently received STL compatibility as well. Let’s take that as an opportunity to compare them with the standard implementation in std::span.
Among other highlights is a new glTF player app, HiDPI support, spline interpolation, a Box2D example and productivity improvements all across the board.
The new release brings more flexibility to asset management and rendering abstractions, improves plugin handling and showcases Leap Motion integration.
I made a brief detour on the way to Vulkan support and equipped Magnum with features that make plugin workflow nicer and open up new possibilities.
The Magnum C++11/C++14 and OpenGL graphics engine gained OpenGEX format support, a bunch of new importer plugins, cross-platform extension loader, transform feedback support and new features from OpenGL ES 3.1 and OpenGL 4.5, among other things.
The Magnum C++11 and OpenGL/OpenGL ES/WebGL graphics engine gained experimental Android support, windowless applications on OS X and Windows, uses SDL2 as the default toolkit, adds new texture and mesh features, improves build system and got huge documentation review.