Add gfx::render_target helper struct

This commit is contained in:
Nikita Lisitsa 2020-10-25 15:44:43 +03:00
parent 9940dd19a0
commit 0206ebc2cb

View file

@ -0,0 +1,27 @@
#pragma once
#include <psemek/gfx/framebuffer.hpp>
#include <psemek/geom/box.hpp>
#include <psemek/util/assert.hpp>
namespace psemek::gfx
{
struct render_target
{
gfx::framebuffer const * framebuffer;
GLenum draw_buffer;
geom::box<int, 2> viewport;
void bind() const
{
assert(framebuffer);
framebuffer->bind();
gl::DrawBuffers(1, &draw_buffer);
gl::Viewport(viewport[0].min, viewport[1].min, viewport[0].length(), viewport[1].length());
}
};
}