X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Frender%2Foccludedscene.cpp;h=5d85b5d5bf762d43f056d114e383cd613ef67198;hb=0fa506250545acb83bc86f1734826544d6f1eda6;hp=81af42b3598e1f1cdc7054d0dabc8d41b29a05b9;hpb=5bb193f930fb8738d099d630c4d625d82c1215b5;p=libs%2Fgl.git diff --git a/source/render/occludedscene.cpp b/source/render/occludedscene.cpp index 81af42b3..5d85b5d5 100644 --- a/source/render/occludedscene.cpp +++ b/source/render/occludedscene.cpp @@ -13,11 +13,8 @@ namespace GL { OccludedScene::OccludedScene(): bounding_mesh(Resources::get_global().get("_occluder.mesh")), - bounding_shader(Resources::get_global().get("_occluder.glsl.shader")), - no_depth_write(LEQUAL, false), - occluder_min_size(0.25f), - queries(OCCLUSION_QUERY, 0), - cache_dirty(false) + bounding_shader(Resources::get_global().get("occluder.glsl.shader")), + queries(OCCLUSION_QUERY, 0) { no_color_write.write_mask = WRITE_NONE; } @@ -80,7 +77,7 @@ void OccludedScene::render(Renderer &renderer, Tag tag) const if(!camera) { for(const OccludedRenderable &o: occluded_cache) - renderer.render(*o.renderable, tag); + o.renderable->render(renderer, tag); return; } @@ -110,7 +107,7 @@ void OccludedScene::render(Renderer &renderer, Tag tag) const i->occluder = true; if(i->occluder) - renderer.render(*i->renderable, tag); + i->renderable->render(renderer, tag); } // Move all objects within the frustum to the beginning of the array @@ -148,16 +145,8 @@ void OccludedScene::render(Renderer &renderer, Tag tag) const // Render anything that has a chance of being visible for(auto i=occluded_cache.begin(); (i!=occluded_cache.end() && i->in_frustum); ++i) if(!i->occluder && queries.get_result(i-occluded_cache.begin())) - renderer.render(*i->renderable, tag); + i->renderable->render(renderer, tag); } - -OccludedScene::OccludedRenderable::OccludedRenderable(): - renderable(0), - bounding_sphere(0), - in_frustum(false), - occluder(false) -{ } - } // namespace GL } // namespace Msp