adding mirror plane options other than auto
[laserbrain_demo] / src / material.h
index 3d0b566..a1244d4 100644 (file)
@@ -16,6 +16,17 @@ enum {
        MTL_TEX_UNKNOWN
 };
 
+enum {
+       MTL_MIRROR_NONE,
+       MTL_MIRROR_AUTO,                // determine mirror plane automatically
+       MTL_MIRROR_AABB_PX,             // plane = AABB +X side
+       MTL_MIRROR_AABB_NX,             // plane = AABB -X side
+       MTL_MIRROR_AABB_PY,             // plane = AABB +Y side
+       MTL_MIRROR_AABB_NY,             // plane = AABB -Y side
+       MTL_MIRROR_AABB_PZ,             // plane = AABB +Z side
+       MTL_MIRROR_AABB_NZ              // plane = AABB -Z side
+};
+
 #define NUM_MTL_TEXTURES       MTL_TEX_UNKNOWN
 
 class Material {
@@ -26,7 +37,7 @@ public:
        float alpha;
 
        float reflect;
-       bool flat_mirror;
+       int flat_mirror;        // see MTL_MIRROR_* enumerations above
 
        Texture *stdtex[NUM_MTL_TEXTURES];
        std::vector<Texture*> textures;