]> git.tdb.fi Git - libs/gl.git/blobdiff - source/core/clipping.cpp
Store implementation limits in a central struct
[libs/gl.git] / source / core / clipping.cpp
index 18b706e78b1b34e9205879acd51cf83d10ad9cbb..644a2434c6b783bda0f806012f23e841e9acd5b8 100644 (file)
@@ -2,6 +2,7 @@
 #include <msp/gl/extensions/msp_clipping.h>
 #include "clipping.h"
 #include "clipplane.h"
+#include "deviceinfo.h"
 #include "error.h"
 #include "matrix.h"
 #include "misc.h"
@@ -13,16 +14,14 @@ namespace GL {
 
 unsigned Clipping::get_n_attach_points()
 {
-       static Require _req(MSP_clipping);
-       static int count = get_i(GL_MAX_CLIP_PLANES);
-       return count;
+       return Limits::get_global().max_clip_planes;
 }
 
 void Clipping::attach(const ClipPlane &p)
 {
        if(find_member(planes, &p, &AttachedPlane::plane)!=planes.end())
                return;
-       if(planes.size()>=get_n_attach_points())
+       if(planes.size()>=Limits::get_global().max_clip_planes)
                throw invalid_operation("Clipping::attach");
 
        planes.push_back(&p);