X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Feffects%2Fambientocclusion.cpp;fp=source%2Feffects%2Fambientocclusion.cpp;h=6ba51853d6d288814bd716fbb76881d13e8185af;hp=21271acf2555d8a7f6b474d9cf3657cc69dccdb9;hb=ce3658993ce2f6b7527a04a36a5e1af349c6f2e9;hpb=2b2676392aff2eb6b38c3e463cc67f4d67a4ef8b diff --git a/source/effects/ambientocclusion.cpp b/source/effects/ambientocclusion.cpp index 21271acf..6ba51853 100644 --- a/source/effects/ambientocclusion.cpp +++ b/source/effects/ambientocclusion.cpp @@ -5,7 +5,6 @@ #include "renderer.h" #include "resources.h" #include "shader.h" -#include "tests.h" using namespace std; @@ -100,6 +99,8 @@ void AmbientOcclusion::set_edge_depth_threshold(float edt) void AmbientOcclusion::render(Renderer &renderer, const Texture2D &color, const Texture2D &depth) { + const Framebuffer *out_fbo = renderer.get_framebuffer(); + Renderer::Push push(renderer); renderer.set_texture("source", &color, &nearest_clamp_sampler); renderer.set_texture("depth", &depth, &nearest_clamp_sampler); @@ -107,11 +108,10 @@ void AmbientOcclusion::render(Renderer &renderer, const Texture2D &color, const renderer.set_texture("rotate", &rotate_lookup, &nearest_sampler); renderer.set_shader_program(&occlude_shader, &shdata); - { - BindRestore bind_fbo(occlude_target.get_framebuffer()); - quad.draw(renderer); - } + renderer.set_framebuffer(&occlude_target.get_framebuffer()); + quad.draw(renderer); + renderer.set_framebuffer(out_fbo); renderer.set_shader_program(&combine_shader); quad.draw(renderer); }