aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/graphics/je_canvas.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libjin/graphics/je_canvas.cpp')
-rw-r--r--src/libjin/graphics/je_canvas.cpp44
1 files changed, 1 insertions, 43 deletions
diff --git a/src/libjin/graphics/je_canvas.cpp b/src/libjin/graphics/je_canvas.cpp
index 8f216e6..831544d 100644
--- a/src/libjin/graphics/je_canvas.cpp
+++ b/src/libjin/graphics/je_canvas.cpp
@@ -10,9 +10,6 @@ namespace JinEngine
namespace Graphics
{
- const Canvas* Canvas::current = nullptr;
- const Canvas* const Canvas::DEFAULT_CANVAS = new Canvas(0);
-
Canvas* Canvas::createCanvas(int w, int h)
{
return new Canvas(w, h);
@@ -53,46 +50,7 @@ namespace JinEngine
bool Canvas::isBinded(const Canvas* cvs)
{
- return current == cvs;
- }
-
- /**
- * bind to canvas
- */
- void Canvas::bind(Canvas* canvas)
- {
- if (isBinded(canvas)) return;
- current = canvas;
- gl.bindFrameBuffer(canvas->fbo);
- int w = canvas->getWidth();
- int h = canvas->getHeight();
- // Set view port to canvas.
- glViewport(0, 0, w, h);
- gl.setProjectionMatrix(0, w, 0, h, -1, 1);
- }
-
- /**
- * bind to default screen render buffer.
- * do some coordinates transform work
- * https://blog.csdn.net/liji_digital/article/details/79370841
- * https://blog.csdn.net/lyx2007825/article/details/8792475
- */
- void Canvas::unbind()
- {
- if (isBinded(DEFAULT_CANVAS)) return;
- current = DEFAULT_CANVAS;
- /* get window size as viewport */
- Window* wnd = Window::get();
- int w = wnd->getW();
- int h = wnd->getH();
-
- glBindFramebuffer(GL_FRAMEBUFFER, DEFAULT_CANVAS->fbo);
-
- /* set viewport on screen */
- glViewport(0, 0, w, h);
-
- gl.setProjectionMatrix(0, w, h, 0, -1, 1);
-
+ return gl.getCanvas() == cvs;
}
} // namespace Graphics