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.

40 lines
1.5 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.
- Comprehensive use of C++11 features for safety, performance and ease of
development.
- Hierarchical @ref Scene "scene graph" which supports transformation caching
for better performance, classes for convenient usage of
@ref AbstractShaderProgram "shaders", @ref Buffer "buffers" and
@ref Texture "textures".
- @ref MeshTools "Mesh tools" for cleaning, optimizing and generating meshes.
Collection of pre-made @ref Primitives "graphic primitives" and
@ref Shaders "shaders" for testing purposes.
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. See also
@ref RequiredExtensions.
@section BuildingLink Building Magnum
Guide @ref Building "how to build Magnum" on different platforms.
15 years ago
@section BasicUsage Basic usage
%Scene in %Magnum is composed of hierarchically connected object instances.
To build the scene, you need Scene object with assigned Camera and some Object
instances. When rendering using Camera::draw(), the engine goes through all
objects connected to camera scene and calls Object::draw() on them.
All objects are by default empty. To make object renderable in the scene,
you must reimplement Object::draw(), and for example bind an
@ref AbstractShaderProgram "shader", @ref Texture "texture" and
render an prepared @ref Mesh "mesh".
15 years ago
*/
}