Plugins & Extensions
A lot of Magnum extra libraries define interfaces for further extensibility with plugins. Advantage of using plugins is the ability to defer decision about particular dependency into deploy stage on given platform.
Importers
Plugins importing general scene formats with mesh data, image data, scene hierarchy, material, light and camera properties.
- TGA, PNG, JPEG, GIF, EXR, HDR, BMP, DDS and other image formats
- glTF, OBJ, Stanford PLY and OpenGEX scene format parsers
- A plugin using Assimp for COLLADA, FBX and other general file format support
- “Any importer” plugin delegating to other image / scene importer plugins based on detected file format
Image converters
Plugins for converting image data between various formats.
- Exporting raw image data as JPEG, TGA, PNG, HDR, BMP or EXR
- Interface for compressing raw image data into GPU-readable formats
- “Any image converter” plugin delegating to other converter plugins based on output file extension
Mesh converters
Coming soon. Subscribe to mosra/magnum#240 for updates.
Audio importers
Plugins importing audio data.
- OGG Vorbis, MP3, AAC, WAV and FLAC support
- “Any importer” plugin delegating to other audio importer plugins based on detected file format
Fonts
Plugins providing parsing of font files and text shaping/layouting.
Font converters
Plugins providing conversion between font formats and pre-rendering glyph cache textures.
- Converting subset of a TTF/OTF font to custom internal Magnum raster format
Shader converters
Coming soon. Subscribe to mosra/magnum#234 for updates.
Math converters
Lastly, it’s possible to implement routines for converting external data types from and to Magnum builtin vector, matrix, complex, quaternion and other types. Once implemented, conversion from external to internal types is a matter of an explicit conversion.