summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/testRenderOutput.cpp23
-rw-r--r--test/testRenderOutput.h6
2 files changed, 12 insertions, 17 deletions
diff --git a/test/testRenderOutput.cpp b/test/testRenderOutput.cpp
index b86469a..e2cc437 100644
--- a/test/testRenderOutput.cpp
+++ b/test/testRenderOutput.cpp
@@ -1,25 +1,20 @@
#include "testRenderOutput.h"
#include <gl_traits.h>
-#include <stdexcept>
TestRenderOutput::TestRenderOutput(TextureAbsCoord outputSize) : size {outputSize}
{
- glBindFramebuffer(GL_FRAMEBUFFER, output);
- const auto configuregdata = [this](glTexture<GL_TEXTURE_2D> & data, const GLenum format, const GLenum attachment) {
- data.storage(1, format, size);
+ const auto configureAttachment = [this](glFramebuffer & fbo, glTexture<GL_TEXTURE_2D> & data, const GLenum iformat,
+ const GLenum attachment) {
+ data.storage(1, iformat, size);
data.parameter(GL_TEXTURE_MIN_FILTER, GL_NEAREST);
data.parameter(GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glFramebufferTexture2D(GL_FRAMEBUFFER, attachment, GL_TEXTURE_2D, data, 0);
+ fbo.texture(attachment, data);
};
- configuregdata(outImage, GL_RGBA8, GL_COLOR_ATTACHMENT0);
- glDrawBuffer(GL_COLOR_ATTACHMENT0);
+ configureAttachment(output, outImage, GL_RGBA8, GL_COLOR_ATTACHMENT0);
+ output.drawBuffers(GL_COLOR_ATTACHMENT0);
- glBindRenderbuffer(GL_RENDERBUFFER, depth);
- glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT, size.x, size.y);
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, depth);
+ depth.storage(GL_DEPTH_COMPONENT, size);
+ output.buffer(GL_DEPTH_ATTACHMENT, depth);
- // finally check if framebuffer is complete
- if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE) {
- throw std::runtime_error("Framebuffer not complete!");
- }
+ output.assertComplete();
}
diff --git a/test/testRenderOutput.h b/test/testRenderOutput.h
index 248485c..e68d1f3 100644
--- a/test/testRenderOutput.h
+++ b/test/testRenderOutput.h
@@ -2,7 +2,7 @@
#include "config/types.h"
#include "game/gamestate.h"
-#include "glArrays.h"
+#include "gfx/gl/glFramebuffer.h"
#include <glm/vec2.hpp>
#include <special_members.h>
@@ -15,8 +15,8 @@ public:
NO_COPY(TestRenderOutput);
const TextureAbsCoord size;
- glFrameBuffer output;
- glRenderBuffer depth;
+ glFramebuffer output;
+ glRenderbuffer depth;
glTexture<GL_TEXTURE_2D> outImage;
GameState gameState;
};