summaryrefslogtreecommitdiffstats
path: root/matchblox/engine/C_Environment.h
diff options
context:
space:
mode:
Diffstat (limited to 'matchblox/engine/C_Environment.h')
-rw-r--r--matchblox/engine/C_Environment.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/matchblox/engine/C_Environment.h b/matchblox/engine/C_Environment.h
new file mode 100644
index 0000000..cfdb816
--- /dev/null
+++ b/matchblox/engine/C_Environment.h
@@ -0,0 +1,32 @@
+#ifndef C_ENVIRONMENT_H
+
+#define C_ENVIRONMENT_H
+
+#include <GL/glut.h>
+
+class C_Environment
+{
+public:
+ //environment map consist of 6 bitmaps with a common
+ //base name with the axis name (_positive_x.bmp,
+ //_negative_y.bmp, ...)
+ //appended, the distance is the distance from the center
+ //to the sides of the cube
+ C_Environment(const char *f_strEnvMapBaseName,
+ double f_dDistance);
+ ~C_Environment();
+
+ void Render();
+ void RenderFace(double f_verts[8][3],
+ int f_v00, int f_v10,
+ int f_v11, int f_v01);
+
+private:
+ double m_dDist;
+
+ //texture handles for the faces of the cube
+ GLuint m_uiFaceTex[6]; //order -x, -y, -z, +x, +y, +z
+};
+
+#endif //C_ENVIRONMENT_H
+