#include "camera.h"
#include "occludedscene.h"
#include "renderer.h"
+#include "resources.h"
#include "sphere.h"
using namespace std;
namespace GL {
OccludedScene::OccludedScene():
- bounding_mesh((VERTEX3, NORMAL3)),
- bounding_shader("occluder.glsl"),
+ bounding_mesh(Resources::get_global().get<Mesh>("_occluder.mesh")),
+ bounding_shader(Resources::get_global().get<Program>("_occluder.glsl.shader")),
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()
i->renderable->finish_frame();
}
-void OccludedScene::render(Renderer &renderer, const Tag &tag) const
+void OccludedScene::render(Renderer &renderer, Tag tag) const
{
if(renderables.empty())
return;