mirror of https://github.com/mosra/magnum.git
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.
54 lines
2.4 KiB
54 lines
2.4 KiB
namespace Magnum { |
|
/** @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 Object "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. |
|
|
|
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. |
|
|
|
@section GettingStarted Getting started |
|
|
|
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 |
|
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 GettingStartedExamples Tutorials and examples |
|
|
|
The best way to get started is to @ref ExamplesTriangle "render your first triangle" |
|
in step-by-step tutorial. Then you can dig deeper and try |
|
@ref Examples "other examples", read about fundamental principles in the |
|
documentation or start experimenting on your own! |
|
|
|
*/ |
|
}
|
|
|