#include <string>
#include <msp/datafile/objectloader.h>
#include <msp/stringcodec/utf8.h>
-#include "vertexarray.h"
namespace Msp {
namespace GL {
#include <msp/core/maputils.h>
#include <msp/datafile/collection.h>
+#include <msp/strings/format.h>
#include "ambientocclusion.h"
#include "blend.h"
#include "bloom.h"
#include "blend.h"
#include "depthtest.h"
#include "postprocessor.h"
-#include "predicate.h"
+#include "resources.h"
#include "stenciltest.h"
namespace Msp {
#include "ambientocclusion.h"
#include "blend.h"
#include "camera.h"
+#include "mesh.h"
#include "renderer.h"
#include "resources.h"
+#include "texture2d.h"
using namespace std;
#ifndef MSP_GL_AMBIENTOCCLUSION_H_
#define MSP_GL_AMBIENTOCCLUSION_H_
-#include "framebuffer.h"
-#include "mesh.h"
#include "postprocessor.h"
-#include "program.h"
#include "programdata.h"
#include "rendertarget.h"
-#include "texture2d.h"
namespace Msp {
namespace GL {
+class Program;
+
/**
Implements screen-space ambient occlusion.
#include <cmath>
#include <msp/strings/format.h>
-#include "blend.h"
#include "bloom.h"
+#include "mesh.h"
#include "renderer.h"
#include "resources.h"
+#include "texture2d.h"
using namespace std;
#ifndef MSP_GL_BLOOM_H_
#define MSP_GL_BLOOM_H_
-#include "framebuffer.h"
-#include "mesh.h"
#include "postprocessor.h"
-#include "texture2d.h"
-#include "program.h"
#include "programdata.h"
#include "rendertarget.h"
namespace Msp {
namespace GL {
+class Program;
+
/**
The Bloom post-processing effect causes very bright areas of the image to bleed
into surrounding pixels. Commonly used together with HDR rendering.
#define MSP_GL_COLORCURVE_H_
#include "postprocessor.h"
-#include "program.h"
#include "programdata.h"
#include "texture1d.h"
namespace Msp {
namespace GL {
+class Program;
+
/**
Processes oversaturated colors to preserve hues. When one color component
exceeds 1.0, the overflow is distributed to the other components, scaling the
#include "effect.h"
-#include "sampler.h"
namespace Msp {
namespace GL {
#define MSP_GL_EFFECT_H_
#include <set>
-#include <msp/core/refptr.h>
#include "renderable.h"
namespace Msp {
namespace GL {
-class Sampler;
-
/**
Effects are used to wrap other renderables and give them additional visual
properties. An Effect's render method should set up the necessary state, call
#ifndef MSP_GL_ENVIRONMENTMAP_H_
#define MSP_GL_ENVIRONMENTMAP_H_
+#include <vector>
#include "camera.h"
#include "effect.h"
#include "framebuffer.h"
-#include "matrix.h"
#include "programdata.h"
#include "texture2d.h"
#include "texturecube.h"
-#include "vector.h"
namespace Msp {
namespace GL {
class Mesh;
+class Sampler;
/**
Creates a cube map texture of the surroundings of the renderable. This texture
-#include <cmath>
-#include <cstdlib>
-#include "camera.h"
#include "light.h"
#include "renderer.h"
#include "resources.h"
-#include "scene.h"
#include "shadowmap.h"
using namespace std;
namespace GL {
class Light;
-class Resources;
/**
Creates shadows on a renderable through a shadow map texture. In the setup
#define MSP_GL_SKY_H_
#include "effect.h"
-#include "framebuffer.h"
#include "programdata.h"
#include "rendertarget.h"
#include <stdexcept>
#include <msp/strings/format.h>
#include "light.h"
-#include "matrix.h"
#include "programdata.h"
using namespace std;
#ifndef MSP_GL_LIGHT_H_
#define MSP_GL_LIGHT_H_
-#include <vector>
#include <msp/datafile/objectloader.h>
+#include <msp/geometry/angle.h>
#include "color.h"
#include "placeable.h"
+#include "vector.h"
namespace Msp {
namespace GL {
-class Matrix;
class ProgramData;
/**
#include <msp/datafile/collection.h>
#include <msp/fs/utils.h>
#include <msp/strings/format.h>
-#include "error.h"
#include "light.h"
#include "lighting.h"
-#include "matrix.h"
using namespace std;
#include <msp/fs/utils.h>
#include <msp/strings/format.h>
#include "material.h"
-#include "program.h"
#include "programdata.h"
-#include "tag.h"
#include "technique.h"
#include "texture.h"
#ifndef MSP_GL_TECHNIQUE_H_
#define MSP_GL_TECHNIQUE_H_
+#include <map>
#include "renderpass.h"
#include "tag.h"
#include <msp/core/algorithm.h>
#include <msp/core/maputils.h>
#include "buffer.h"
-#include "camera.h"
#include "instancearray.h"
#include "mesh.h"
#include "object.h"
class Buffer;
class Object;
class ObjectInstance;
-class VertexArray;
-class VertexSetup;
/**
Renders multiple instances of an Object in an efficient manner. If instanced
#include <msp/fs/utils.h>
#include <msp/strings/format.h>
#include "error.h"
-#include "material.h"
#include "mesh.h"
#include "object.h"
#include "objectinstance.h"
-#include "program.h"
-#include "programdata.h"
#include "renderer.h"
#include "resourcemanager.h"
#include "technique.h"
namespace Msp {
namespace GL {
-class Material;
class Mesh;
class ObjectInstance;
class Technique;
-class Texture;
/**
Combines a Mesh with a Technique to give it an appearance. The Technique will
#include <algorithm>
#include "camera.h"
+#include "mesh.h"
#include "occludedscene.h"
+#include "program.h"
#include "renderer.h"
#include "resources.h"
-#include "sphere.h"
using namespace std;
#include <vector>
#include "blend.h"
#include "depthtest.h"
-#include "mesh.h"
-#include "program.h"
#include "query.h"
#include "scene.h"
namespace Msp {
namespace GL {
+class Mesh;
+class Program;
+
/**
A scene that performs occlusion queries on renderables to skip those that are
entirely occluded by others.
#ifndef MSP_GL_ORDEREDSCENE_H_
#define MSP_GL_ORDEREDSCENE_H_
-#include <list>
+#include <vector>
#include "scene.h"
namespace Msp {
#include <msp/core/algorithm.h>
-#include <msp/core/maputils.h>
#include <msp/debug/demangle.h>
-#include <msp/gl/extensions/arb_direct_state_access.h>
#include <msp/io/print.h>
#include "buffer.h"
#include "color.h"
#ifndef MSP_GL_PROGRAMDATA_H_
#define MSP_GL_PROGRAMDATA_H_
-#include <map>
#include <stdexcept>
#include <msp/datafile/objectloader.h>
#include "datatype.h"
};
class Buffer;
-class BufferBackedUniformBlock;
class PipelineState;
class Program;
class UniformBlock;
#ifndef MSP_GL_RENDERABLE_H_
#define MSP_GL_RENDERABLE_H_
-#include <string>
-#include <msp/core/attributes.h>
#include <msp/geometry/boundingsphere.h>
#include "tag.h"
#include "buffer.h"
#include "camera.h"
#include "clipping.h"
-#include "deviceinfo.h"
#include "error.h"
+#include "framebuffer.h"
#include "lighting.h"
#include "material.h"
#include "program.h"
#include <set>
#include <vector>
#include "commands.h"
-#include "framebuffer.h"
#include "matrix.h"
#include "pipelinestate.h"
#include "programdata.h"
class Batch;
class Buffer;
class Camera;
+union ClearValue;
class Clipping;
class Material;
class Mesh;
#include <msp/datafile/collection.h>
#include <msp/fs/utils.h>
+#include <msp/strings/format.h>
#include "camera.h"
#include "objectinstance.h"
#include "occludedscene.h"
#ifndef MSP_GL_SCENE_H_
#define MSP_GL_SCENE_H_
-#include <vector>
+#include <map>
#include <msp/core/typeregistry.h>
#include <msp/datafile/objectloader.h>
#include "matrix.h"
#include "renderable.h"
-#include "vector.h"
namespace Msp {
namespace GL {
-#include <msp/core/maputils.h>
#include <msp/strings/format.h>
-#include "blend.h"
#include "error.h"
-#include "framebuffer.h"
#include "lighting.h"
#include "postprocessor.h"
#include "renderer.h"
+#include "rendertarget.h"
#include "sequence.h"
#include "texture2d.h"
#ifndef MSP_GL_SEQUENCE_H_
#define MSP_GL_SEQUENCE_H_
-#include <map>
-#include <set>
+#include <vector>
#include "blend.h"
#include "depthtest.h"
-#include "framebuffer.h"
+#include "frameformat.h"
#include "renderable.h"
-#include "rendertarget.h"
#include "stenciltest.h"
-#include "texture2d.h"
namespace Msp {
namespace GL {
-class Blend;
-class Camera;
class Clipping;
class Lighting;
class PostProcessor;
+class RenderTarget;
/**
Top-level content class. Typically a Sequence is used as the content
#include "meshbuilder.h"
#include "program.h"
#include "renderer.h"
+#include "technique.h"
#include "text.h"
#include "texture2d.h"
#include "mesh.h"
#include "object.h"
#include "objectinstance.h"
-#include "technique.h"
namespace Msp {
namespace GL {
#ifndef MSP_GL_VIEW_H_
#define MSP_GL_VIEW_H_
-#include <list>
+#include <sigc++/trackable.h>
#include "framebuffer.h"
namespace Msp {
#ifndef MSP_GL_WINDOWVIEW_H_
#define MSP_GL_WINDOWVIEW_H_
-#include <sigc++/trackable.h>
#include <msp/graphics/glcontext.h>
#include <msp/graphics/window.h>
#include "view.h"