You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
3.2 KiB

namespace Magnum {
15 years ago
/** @mainpage
%Magnum is 3D graphics engine written in C++11 and OpenGL 3 Core Profile.
Features:
- Easy-to-use templated @ref Math "mathematical library" for matrix/vector
calculations and @ref Math::Geometry "geometry".
- Hierarchical @ref SceneGraph "scene graph" which supports transformation
caching for better performance, classes for convenient usage of
@ref AbstractShaderProgram "shaders", @ref Buffer "buffers" and
@ref AbstractTexture "textures". Access to @ref Framebuffer "framebuffer"
and @ref AbstractQuery "occlusion queries".
- @ref Physics "Physics library" for collision detection and rigid body
dynamics, @ref MeshTools "Mesh tools" for cleaning, optimizing and
generating meshes.
- Plugin-based @ref Trade "data exchange framework" for importing image, mesh,
material and scene data in various formats.
- Collection of pre-made @ref Primitives "graphic primitives" and
@ref Shaders "shaders" for testing purposes.
- Classes for easy creation of OpenGL context with @ref Contexts
"various toolkits".
- Comprehensive use of C++11 features for safety, performance and ease of
development. All code which doesn't directly interact with OpenGL is
covered with unit tests.
15 years ago
The engine is meant to be run on OpenGL 3 capable hardware, but most of the
functionality is working on OpenGL 2.1 hardware too. The engine can be built
also for OpenGL ES with limited functionality. See also @ref required-extensions.
@section download-build Downloading and building Magnum
Guide @ref building "how to download and build Magnum" on different platforms.
@section getting-started Getting started
14 years ago
Applications using %Magnum have at least two parts. One part manages OpenGL
context using some toolkit and takes care of window resizing, mouse and
keyboard input, while the other manages the scene and does the rendering.
While it is possible for you to manage the OpenGL context and events on your
14 years ago
own, %Magnum provides implementations for the most common toolkits (such as
GLUT, SDL or Qt) in Contexts namespace. %Scene in %Magnum is composed of
hierarchically connected object instances. To build the scene you need Scene
object with assigned camera and at least one Object instance.
@subsection getting-started-examples Tutorials and examples
14 years ago
The best way to get started is to @ref examples-triangle "render your first triangle"
in step-by-step tutorial. Then you can dig deeper and try @ref example-index
"other examples", read about fundamental principles in the documentation or
start experimenting on your own!
@subsection getting-started-hacking Hacking Magnum
If you want to hack on this engine, if you spotted a bug, need an feature or
have an awesome idea, you can get a copy of the sources from GitHub and start
right now! There is the already mentioned guide about
@ref building "how to download and build Magnum" and also guide about
@ref coding-style "coding style and best practices" which you should follow to
make the library as consistent and maintainable as possible.
Feel free to get more information or contact the author at:
- GitHub - https://github.com/mosra/magnum
- Website - http://mosra.cz/blog/
- E-mail - mosra@centrum.cz
- Jabber - mosra@jabbim.cz
15 years ago
*/
}