|
|
|
|
/*
|
|
|
|
|
This file is part of Magnum.
|
|
|
|
|
|
|
|
|
|
Copyright © 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019,
|
|
|
|
|
2020, 2021, 2022, 2023, 2024, 2025, 2026
|
|
|
|
|
Vladimír Vondruš <mosra@centrum.cz>
|
|
|
|
|
|
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a
|
|
|
|
|
copy of this software and associated documentation files (the "Software"),
|
|
|
|
|
to deal in the Software without restriction, including without limitation
|
|
|
|
|
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
|
|
|
and/or sell copies of the Software, and to permit persons to whom the
|
|
|
|
|
Software is furnished to do so, subject to the following conditions:
|
|
|
|
|
|
|
|
|
|
The above copyright notice and this permission notice shall be included
|
|
|
|
|
in all copies or substantial portions of the Software.
|
|
|
|
|
|
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
|
|
|
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
|
|
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
|
|
|
DEALINGS IN THE SOFTWARE.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
namespace Magnum {
|
|
|
|
|
|
|
|
|
|
/** @page credits-third-party Third-party components
|
|
|
|
|
@brief Third-party dependencies and their corresponding license information
|
|
|
|
|
|
|
|
|
|
@m_keyword{3rd party components,,}
|
|
|
|
|
|
|
|
|
|
This page lists libraries, data files and other components that some Magnum
|
|
|
|
|
libraries, plugins, executables or tests depend on. See the
|
|
|
|
|
@ref mainpage-license "main page" for license of Magnum itself. For easier
|
|
|
|
|
overview the dependencies are color-coded:
|
|
|
|
|
|
|
|
|
|
- A @m_class{m-label m-dim} **dim** or no label marks dependencies that have
|
|
|
|
|
no license requirements, such as usage of public APIs like Vulkan or OpenAL
|
|
|
|
|
or usage of platform-specific interfaces.
|
|
|
|
|
- A @m_class{m-label m-success} **green** label marks licenses that make the
|
|
|
|
|
dependency safe to use in a commercial setting without having to release
|
|
|
|
|
your source code, usually requiring you to give attribution.
|
|
|
|
|
- A @m_class{m-label m-primary} **light blue** label marks public domain
|
|
|
|
|
software. In some countries there's no notion of public domain, in which
|
|
|
|
|
case there might be a fallback license as well.
|
|
|
|
|
- A @m_class{m-label m-warning} **yellow** label marks licenses that require
|
|
|
|
|
you to either dynamically link to the software to be able to use it in a
|
|
|
|
|
commercial setting or release your source code as well. In some cases there
|
|
|
|
|
is an alternative commercial licensing option without this requirement.
|
|
|
|
|
- A @m_class{m-label m-danger} **red** label marks licenses that
|
|
|
|
|
unconditionally require you to publish your software together with its
|
|
|
|
|
source code. In some cases there is an alternative commercial licensing
|
|
|
|
|
option without this requirement.
|
|
|
|
|
|
|
|
|
|
Documentation of each linked library / plugin / executable has more detailed
|
|
|
|
|
information about the dependencies used. Especially in case of plugins in most
|
|
|
|
|
cases there are alternative implementations with different licensing
|
|
|
|
|
requirements. Please note that it's not guaranteed that the licensing info
|
|
|
|
|
provided is in any way accurate or complete, you should always check with a
|
|
|
|
|
lawyer to be sure.
|
|
|
|
|
|
|
|
|
|
There's also a list of @ref credits-contributors "people and organizations that contributed to Magnum".
|
|
|
|
|
|
|
|
|
|
- - -
|
|
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/** @page credits-contributors Contributors
|
|
|
|
|
@brief People and organizations that contributed to Magnum
|
|
|
|
|
|
|
|
|
|
@m_keywords{Credits}
|
|
|
|
|
|
|
|
|
|
Listing only people with code contributions or other significant work, because
|
|
|
|
|
otherwise there's too many :) There's also a @ref corrade-credits-contributors "similar list for Corrade"
|
|
|
|
|
and a list of @ref credits-third-party "third party components with their license info".
|
|
|
|
|
Big thanks to everyone involved!
|
|
|
|
|
|
|
|
|
|
@m_class{m-text-center m-text m-dim}
|
|
|
|
|
|
|
|
|
|
Are the below lists missing your name or something's wrong?
|
|
|
|
|
[Let us know!](https://magnum.graphics/contact/)
|
|
|
|
|
|
|
|
|
|
- **[\@1b00](https://github.com/1b00)** --- RPM package
|
|
|
|
|
- **Aaron Gokaslan** ([\@Skylion007](https://github.com/Skylion007)) ---
|
|
|
|
|
Emscripten LTO support, various minor code modernization, typo fixes
|
|
|
|
|
- **[\@abgita](https://github.com/abgita)** --- minor typo fixes
|
|
|
|
|
- **Samuel Longchamps** ([\@ak-slongchamps](https://github.com/ak-slongchamps))
|
|
|
|
|
--- Windows build fixes
|
|
|
|
|
- **Alan Jefferson** ([\@alanjfs](https://github.com/alanjfs)) --- extensive
|
|
|
|
|
usability and first-time-use feedback
|
|
|
|
|
- **[\@Alan-FGR](https://github.com/Alan-FGR)** --- documentation fixes
|
|
|
|
|
- **Alexander F Rødseth** ([\@xyproto](https://github.com/xyproto)) ---
|
|
|
|
|
packages in the ArchLinux community repository
|
|
|
|
|
- **Alexey Yurchenko** ([\@alexesDev](https://github.com/alexesDev)) ---
|
|
|
|
|
static analyis, bug reports
|
|
|
|
|
- **Alice Margatroid** ([\@Alicemargatroid](https://github.com/Alicemargatroid))
|
|
|
|
|
--- Multi-channel support in the @ref Audio library, standard conformance;
|
|
|
|
|
float, double, A-Law and μ-Law format support in the
|
|
|
|
|
@ref Audio::WavImporter "WavAudioImporter" plugin
|
|
|
|
|
- **Andréas Leroux** ([\@AndreasLrx](https://github.com/AndreasLrx))** ---
|
|
|
|
|
tick event implementation in @ref Platform::GlfwApplication
|
|
|
|
|
- **Andrew ([\@sheerluck](https://github.com/sheerluck))** --- Gentoo package
|
|
|
|
|
fixes
|
Text: allow picking a concrete font ID in a collection.
The AbstractFont::openFile() and openData() now get an additional
argument specifying a font index to allow picking a concrete font index
for example in a TTC collection.
This index has to be specified upfront with no possibility to change it
afterwards, because that's how both FreeType and stb_truetype work. Thus
there are also new fileFontCount() and dataFontCount() APIs taking a
filename / data argument, instead of this being a fontCount() query on
an opened file. The implication from this is that -- unlike basically
all other APIs in Trade and elsewhere -- specifying an out-of-bounds
font index isn't an assertion (i.e., a programmer error) but rather a
graceful failure, because requireing the user to first call
fileFontCount() and then openFile() would mean having to open and
parse the same file twice, which is undesirable overhead.
While this isn't breaking for end users, as it's just a new optional
argument to openFile() and openData(), it's a breaking change for plugin
interfaces. The old doOpenFile() and doOpenData() interfaces are still
there to help transitioning existing plugins, but are marked as
deprecated. Delegating to those turned out to be quite involved, so
there are many new tests verifying this compatibility code path.
The plugin interface string version is bumped but in the next commits
I'm making use of the doOpenData() / doOpenFile() API breakage to do
more changes. Those won't result in further plugin interface changes, so
this set of commits should be treated as a single indivisible change to
the plugin interface. For this reason, uses of AbstractFont outside of
AbstractFontTest (including the MagnumFont plugin) aren't adapted yet
-- they pass tests as before, but compile only with deprecated APIs
enabled.
Co-authored-by: Andrew Snyder <asnyder@minitab.com>
1 week ago
|
|
|
- **Andrew Snyder ([\@arsnyder16](https://github.com/arsnyder16))** ---
|
|
|
|
|
additions to the @ref Text library
|
|
|
|
|
- **Andy Maloney** ([\@asmaloney](https://github.com/asmaloney)) --- CMake
|
|
|
|
|
and GDB printer fixes, squashing documentation typos
|
|
|
|
|
- **Andy Somogyi** ([\@andysomogyi](https://github.com/andysomogyi)) ---
|
|
|
|
|
bugreports, API design improvement suggestions
|
|
|
|
|
- **[\@ArEnSc](https://github.com/ArEnSc)** --- initial implementation of
|
|
|
|
|
windowless applications under macOS, macOS port improvements
|
|
|
|
|
- **Ashwin Ravichandran** ([\@ashrko619](https://github.com/ashrko619)) ---
|
|
|
|
|
Bézier curve implementation
|
|
|
|
|
- **Bill Robinson** ([\@wivlaro](https://github.com/wivlaro)) --- numerous
|
|
|
|
|
bug reports, macOS fixes, feature improvements
|
|
|
|
|
- **[\@biosek](https://github.com/biosek)** --- documentation fixes
|
|
|
|
|
- **Borislav Stanimirov** ([\@iboB](https://github.com/iboB)) --- strict
|
|
|
|
|
weak ordering for @ref Math types
|
|
|
|
|
- **Burak Canik** ([\@fauder](https://github.com/fauder)) --- improvements to
|
|
|
|
|
MSVC natvis files, warning fixes
|
|
|
|
|
- **Cameron Egbert** ([\@cegbertOculus](https://github.com/cegbertOculus))
|
|
|
|
|
--- fixes to Windows HiDPI support
|
|
|
|
|
- **Christophe Meyer** ([\@cmey](https://github.com/cmey)) --- documentation
|
|
|
|
|
fixes
|
|
|
|
|
- **Daniel Bloor** ([\@Bluer01](https://github.com/Bluer01)) --- setting old
|
|
|
|
|
code on fire
|
|
|
|
|
- **Daniel Guzman** ([\@roig](https://github.com/roig)) --- improvements to
|
|
|
|
|
@ref ResourceManager, warning fixes
|
|
|
|
|
- **Denis Igorevich Lobanov** ([\@denislobanov](https://github.com/denislobanov))
|
|
|
|
|
--- math fixes
|
|
|
|
|
- **[\@DJQuardaboff](https://github.com/DJQuardaboff)** --- discovery of a
|
|
|
|
|
silly mistake with @ref Frustumd debug output printer
|
|
|
|
|
- **[\@dlardi](https://github.com/dlardi)** --- WGL-related bugfixes
|
|
|
|
|
- **[\@EhWhoAmI](https://github.com/EhWhoAmI)** --- MSVC compilation fixes
|
|
|
|
|
- **Eliot Saba** ([\@staticfloat](https://github.com/staticfloat)) ---
|
|
|
|
|
macOS-related updates to @ref Platform::GlfwApplication
|
|
|
|
|
- **Émile Grégoire** ([\@emgre](https://github.com/emgre)) --- documentation
|
|
|
|
|
updates, algorithm bugfixes
|
|
|
|
|
- **Erik Wijmans** ([\@erikwijmans](https://github.com/erikwijmans)) ---
|
|
|
|
|
NVidia-specific workarounds for headless EGL contexts, CUDA device
|
|
|
|
|
selection in @ref Platform::WindowlessEglApplication
|
|
|
|
|
- **Florian Goujeon** ([\@fgoujeon](https://github.com/fgoujeon)) --- iOS
|
|
|
|
|
fixes in the @ref Shaders library
|
|
|
|
|
- **Gerhard de Clercq** --- Windows RT (Store/Phone) port
|
|
|
|
|
- **Guillaume Giraud** ([\@Guillaume227](https://github.com/Guillaume227)) ---
|
|
|
|
|
algorithm bugfixes
|
|
|
|
|
- **Guillaume Jacquemin** ([\@williamjcm](https://github.com/williamjcm)) ---
|
|
|
|
|
MSYS2 packages, additions to @ref Audio, @ref Platform::Sdl2Application and
|
|
|
|
|
@ref Platform::GlfwApplication, GDB pretty-printers,
|
|
|
|
|
[base-wxwidgets](https://github.com/mosra/magnum-bootstrap/tree/base-wxwidgets)
|
|
|
|
|
bootstrap project
|
|
|
|
|
- **Hans Loeblich** ([\@thehans](https://github.com/thehans)) ---
|
|
|
|
|
improvements to Debian package building experience
|
|
|
|
|
- **Hilario Pérez Corona** ([\@hpcorona](https://github.com/hpcorona)) ---
|
|
|
|
|
improvements to @cb{.cmake} android_create_apk() @ce
|
|
|
|
|
- **[\@hsdk123](https://github.com/hsdk123)** --- CMake improvements, Android
|
|
|
|
|
platform updates
|
|
|
|
|
- **Hugo Amnov** ([\@hugoam](https://github.com/hugoam)) --- Additions,
|
|
|
|
|
usability improvements and performance optimization in the @ref GL library,
|
|
|
|
|
buildsystem improvements and STL usage cleanup
|
|
|
|
|
- **Igal Alkon** ([\@alkavan](https://github.com/alkavan)) --- RPM packages
|
|
|
|
|
- **Ivan P.** ([\@uzername](https://github.com/uzername)) --- documentation
|
|
|
|
|
improvements
|
|
|
|
|
- **Ivan Sanz Carasa** ([\@isc30](https://github.com/isc30)) --- buildsystem
|
|
|
|
|
improvements
|
|
|
|
|
- **Jackson Campolattaro** ([\@JacksonCampolattaro](https://github.com/JacksonCampolattaro))
|
|
|
|
|
--- documentation improvements, [base-gtkmm](https://github.com/mosra/magnum-bootstrap/tree/base-gtkmm)
|
|
|
|
|
bootstrap project
|
|
|
|
|
- **Jan Dupal** ([\@JanDupal](https://github.com/JanDupal)) --- Homebrew
|
|
|
|
|
package for `magnum-bindings`
|
|
|
|
|
- **[\@Janos95](https://github.com/Janos95)** -- @ref Math and
|
|
|
|
|
@ref DebugTools::ColorMap additions
|
|
|
|
|
- **Joel Clay** ([\@jclay](https://github.com/jclay)) --- Vcpkg packages
|
|
|
|
|
- **John Laxson** ([\@jlaxson](https://github.com/jlaxson)) --- Homebrew
|
|
|
|
|
package improvements
|
|
|
|
|
- **John Turner** ([\@jturner65](https://github.com/jturner65)) ---
|
|
|
|
|
documentation improvements
|
|
|
|
|
- **Jonathan Hale** ([\@Squareys](https://github.com/Squareys)) ---
|
|
|
|
|
@ref Audio and @ref Trade library enhancements,
|
|
|
|
|
@ref Platform::GlfwApplication and @ref Platform::EmscriptenApplication
|
|
|
|
|
implementation, frustum and cone culling and other @ref Math additions,
|
|
|
|
|
prototyping skinning support in @ref Trade::MeshData, @ref Shaders::PhongGL
|
|
|
|
|
and @ref MeshTools::compile(), bug reports, Windows build improvements,
|
|
|
|
|
documentation improvements and tons of other stuff
|
|
|
|
|
- **Kleis Auke Wolthuizen** ([@\kleisauke](https://github.com/kleisauke)) ---
|
|
|
|
|
Emscripten build fixes
|
|
|
|
|
- **Konstantinos Chatzilygeroudis** ([\@costashatz](https://github.com/costashatz))
|
|
|
|
|
--- Debian package, improvements to @ref Platform::GlfwApplication and
|
|
|
|
|
@ref Platform::AbstractXApplication
|
|
|
|
|
- **Krzysztof Szenk** ([\@Crisspl](https://github.com/Crisspl)) --- math
|
|
|
|
|
fixes
|
|
|
|
|
- **Leon Moctezuma** ([\@leonidax](https://github.com/leonidax)) ---
|
|
|
|
|
bugreports, API design direction
|
|
|
|
|
- **Mandeep Singh Baines** ([\@msbaines](https://github.com/msbaines)) ---
|
|
|
|
|
WebGL 2 build fixes
|
|
|
|
|
- **Marco Melorio** ([\@Melix19](https://github.com/Melix19)) --- iOS test
|
|
|
|
|
updates and fixes, cursor management in @ref Platform::Sdl2Application and
|
|
|
|
|
@ref Platform::GlfwApplication, Math library additions and doc fixes
|
|
|
|
|
- **Max Schwarz** ([\@xqms](https://github.com/xqms)) --- `Any*` plugin
|
|
|
|
|
improvements, fixes in the @ref GL library
|
|
|
|
|
- **Michael Tao** ([\@mtao](https://github.com/mtao)) --- Gentoo build fixes
|
|
|
|
|
- **Miguel Martin** ([\@miguelmartin75](https://github.com/miguelmartin75))
|
|
|
|
|
--- initial macOS port, various other improvements
|
|
|
|
|
- **Nathan Ollerenshaw** ([\@matjam](https://github.com/matjam)) --- Ubuntu
|
|
|
|
|
packages in a PPA repository
|
|
|
|
|
- **Nghia Truong** ([\@ttnghia](https://github.com/ttnghia) --- @ref Math
|
|
|
|
|
library additions
|
|
|
|
|
- **Nick Skelsey** ([\@NSkelsey](https://github.com/NSkelsey)) ---
|
|
|
|
|
documentation copy-editing
|
|
|
|
|
- **[\@nodoteve](https://github.com/nodoteve)** --- initial multi-touch
|
|
|
|
|
support in @ref Platform::AndroidApplication
|
|
|
|
|
- **[\@LB--](https://github.com/LB--)** --- warning fixes, Windows
|
|
|
|
|
buildsystem improvements
|
|
|
|
|
- **Olga Turanksaya** ([\@olga-python](https://github.com/olga-python)) ---
|
|
|
|
|
Gentoo ebuild)
|
|
|
|
|
- **Pablo Escobar** ([\@pezcode](https://github.com/pezcode)) --- @ref GL,
|
|
|
|
|
@ref Math and @ref MeshTools additions, support for multiple
|
|
|
|
|
@ref Platform::EmscriptenApplication canvases on one page,
|
|
|
|
|
Emscripten-focused fixes, @ref Platform::Sdl2Application additions
|
|
|
|
|
- **Pascal Thomet** ([\@pthom](https://github.com/pthom)) --- C++17
|
|
|
|
|
compilation fixes, buildsystem improvements, Hunter package
|
|
|
|
|
- **Sam Spilsbury** ([\@smspillaz](https://github.com/smspillaz)) --- WebGL
|
|
|
|
|
and GLES fixes
|
|
|
|
|
- **Samuel Kogler** ([\@skogler](https://github.com/skogler)) ---
|
|
|
|
|
@ref Platform::GlfwApplication crash fixes
|
|
|
|
|
- **Samuel Vargas** ([\@Samulus](https://github.com/Samulus)) --- fixes in
|
|
|
|
|
the @ref Vk library
|
|
|
|
|
- **[\@Selot](https://github.com/Selot)** --- Fixes in the `base-qt`
|
|
|
|
|
bootstrap project
|
|
|
|
|
- **Séverin Lemaignan** ([\@severin-lemaignan](https://github.com/severin-lemaignan))
|
|
|
|
|
--- lots of feedback and bug reports for the initial releases
|
|
|
|
|
- **[\@sigman78](https://github.com/sigman78)** --- Initial MSVC 2017 port,
|
|
|
|
|
Vcpkg packages
|
|
|
|
|
- **Siim Kallas** ([\@seemk](https://github.com/seemk)) ---
|
|
|
|
|
@ref Platform::Sdl2Application improvements, bugfixes
|
|
|
|
|
- **Stanislaw Halik** ([\@sthalik](https://github.com/sthalik)) ---
|
|
|
|
|
@ref Timeline additions, C++14 @cpp constexpr @ce improvements, MSVC build
|
|
|
|
|
fixes
|
|
|
|
|
- **Steeve Morin** ([\@steeve](https://github.com/steeve)) --- iOS
|
|
|
|
|
buildsystem improvements
|
|
|
|
|
- **Stefan Wasilewski** ([\@smw](https://github.com/smw)) --- macOS port
|
|
|
|
|
improvements
|
|
|
|
|
- **Stéphane Brard** ([\@aspioupiou](https://github.com/aspioupiou)) ---
|
|
|
|
|
shared context support in windowless applications
|
|
|
|
|
- **[\@ThePixelMoon](https://github.com/ThePixelMoon)** --- documentation
|
|
|
|
|
fixes
|
|
|
|
|
- **Thibault Jochem** ([\@Tryum](https://github.com/Tryum)) ---
|
|
|
|
|
@ref Platform::GlfwApplication improvements
|
|
|
|
|
- **Thomas Tissot-Dupont** ([\@dolphineye](https://github.com/dolphineye))
|
|
|
|
|
--- OpenGL ES compatibility improvements
|
|
|
|
|
- **Travis Watkins** ([\@amaranth](https://github.com/amaranth)) --- support
|
|
|
|
|
for windowless applications under macOS
|
|
|
|
|
- **Vincent Le Garrec** ([\@bansan85](https://github.com/bansan85)) ---
|
|
|
|
|
Android buildsystem fixes and improvements
|
|
|
|
|
- **Vladislav** ([\@dranikpg](https://github.com/dranikpg)) --- Async @ref GL
|
|
|
|
|
shader compilation
|
|
|
|
|
- **Will Usher** ([\@Twinklebear](https://github.com/Twinklebear)) ---
|
|
|
|
|
@ref Platform::EmscriptenApplication build fixes
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
}
|