diff options
Diffstat (limited to 'Source/Asura.Engine/Graphics/Canvas.cpp')
-rw-r--r-- | Source/Asura.Engine/Graphics/Canvas.cpp | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/Source/Asura.Engine/Graphics/Canvas.cpp b/Source/Asura.Engine/Graphics/Canvas.cpp index 8ca6fb2..61787b6 100644 --- a/Source/Asura.Engine/Graphics/Canvas.cpp +++ b/Source/Asura.Engine/Graphics/Canvas.cpp @@ -5,7 +5,37 @@ namespace AsuraEngine namespace Graphics { - + Canvas::Canvas() + : Texture() + , mWidth(0) + , mHeight(0) + { + glGenFramebuffers(1, &mFBO); + GLint current_fbo; + glGetIntegerv(GL_DRAW_FRAMEBUFFER_BINDING, ¤t_fbo); + glBindFramebuffer(GL_FRAMEBUFFER, mFBO); + glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, mTextureHandle, 0); + glBindFramebuffer(GL_FRAMEBUFFER, current_fbo); + } + + void Canvas::SetSize(uint w, uint h) + { + GLint current_tex; + glGetIntegerv(GL_TEXTURE_BINDING_2D, ¤t_tex); + glBindTexture(GL_TEXTURE_2D, mTextureHandle); + + glBindTexture(GL_TEXTURE_2D, current_tex); + } + + void Canvas::Bind() + { + + } + + void Canvas::Unbind() + { + + } } }
\ No newline at end of file |