]> git.tdb.fi Git - libs/gl.git/blobdiff - source/render/occludedscene.cpp
Load various built-in things through Resources
[libs/gl.git] / source / render / occludedscene.cpp
index 143008cdc92af5a5a1a01a1627d7732fc60ebcbe..bfa9fed76a5b7a19b2bf728fa03c04c80c811554 100644 (file)
@@ -4,6 +4,7 @@
 #include "camera.h"
 #include "occludedscene.h"
 #include "renderer.h"
+#include "resources.h"
 #include "sphere.h"
 
 using namespace std;
@@ -11,19 +12,14 @@ using namespace std;
 namespace Msp {
 namespace GL {
 
-OccludedScene::OccludedScene():
-       bounding_mesh((VERTEX3, NORMAL3)),
-       bounding_shader("occluder.glsl"),
+OccludedScene::OccludedScene(Resources &resources):
+       bounding_mesh(resources.get<Mesh>("_occluder.mesh")),
+       bounding_shader(resources.get<Program>("_occluder.glsl")),
        occluder_min_size(0.25f),
        cache_dirty(false)
 {
        static Require req(ARB_occlusion_query);
        static Require req2(ARB_occlusion_query2);
-
-       /* Use a slightly larger radius to ensure that all parts of the renderable
-       fit inside the icosahedron */
-       IcoSphereBuilder(1.26f, 1).build(bounding_mesh);
-       bounding_mesh.set_winding(&WindingTest::counterclockwise());
 }
 
 OccludedScene::~OccludedScene()