]> git.tdb.fi Git - libs/gl.git/blobdiff - source/renderable.h
Remove the deprecated ProgramBuilder class
[libs/gl.git] / source / renderable.h
index e90ab0243ee140173256ee3f2a6a1ba904fce7cc..80fe172eb7435b44f147d4324294b6c72b5d5fd2 100644 (file)
@@ -2,6 +2,7 @@
 #define MSP_GL_RENDERABLE_H_
 
 #include <string>
+#include <msp/core/inttypes.h>
 #include <msp/geometry/boundingsphere.h>
 #include "tag.h"
 
@@ -15,8 +16,9 @@ class Renderer;
 Base class for renderable objects.  Rendering is performed with the help of a
 Renderer object.
 
-The render methods take a Tag to identify a render pass.  It is most commonly
-used together with Techniques and Pipelines to implement multipass rendering.
+The render method takes a Tag to identify a render pass.  It can be used with
+a Technique to select alternative rendering methods, such as simplified shaders
+for a depth-only shadow pass.
 
 The setup_frame and finish_frame methods provide a mechanism for performing
 once-per-frame operations.  This is most useful for effects, which may need to
@@ -33,10 +35,11 @@ public:
 
        /** Returns a key used for grouping Renderables in an InstanceScene.  The
        returned value is treated as opaque. */
-       virtual long get_instance_key() const { return 0; }
+       virtual IntPtr get_instance_key() const { return 0; }
 
        /** Returns the model matrix of the Renderable.  Null is returned if no such
-       matrix exists. */
+       matrix exists.  The matrix should be in world space for some effects to work
+       correctly. */
        virtual const Matrix *get_matrix() const { return 0; }
 
        /** Returns a bounding sphere that completely encloses the Renderable.  The