From 06aa05c2c396eba0cb36636c6042a5762935deb9 Mon Sep 17 00:00:00 2001 From: Sung Park Date: Thu, 28 Jun 2012 03:37:13 +0000 Subject: [PATCH] EvasGL: Adding MSAA for depth_24_stencil_8 format that was missing from the previous commit. SVN revision: 72970 --- .../src/modules/engines/gl_x11/evas_engine.c | 29 +++++++++++++++---- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/legacy/evas/src/modules/engines/gl_x11/evas_engine.c b/legacy/evas/src/modules/engines/gl_x11/evas_engine.c index 55cd7b2e19..9fa5dcba16 100644 --- a/legacy/evas/src/modules/engines/gl_x11/evas_engine.c +++ b/legacy/evas/src/modules/engines/gl_x11/evas_engine.c @@ -3367,7 +3367,10 @@ _attach_fbo_surface(Render_Engine *data __UNUSED__, // Attach texture to FBO if (sfc->rt_msaa_samples) - glsym_glFramebufferTexture2DMultisample(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, sfc->rt_tex, 0, sfc->rt_msaa_samples); + glsym_glFramebufferTexture2DMultisample(GL_FRAMEBUFFER, + GL_COLOR_ATTACHMENT0, + GL_TEXTURE_2D, sfc->rt_tex, + 0, sfc->rt_msaa_samples); else glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, sfc->rt_tex, 0); @@ -3387,10 +3390,26 @@ _attach_fbo_surface(Render_Engine *data __UNUSED__, glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTexImage2D(GL_TEXTURE_2D, 0, GL_DEPTH_STENCIL_OES, sfc->w, sfc->h, 0, GL_DEPTH_STENCIL_OES, GL_UNSIGNED_INT_24_8_OES, NULL); - glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, - GL_TEXTURE_2D, sfc->rb_depth_stencil, 0); - glFramebufferTexture2D(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, - GL_TEXTURE_2D, sfc->rb_depth_stencil, 0); + if (sfc->rt_msaa_samples) + { + glsym_glFramebufferTexture2DMultisample(GL_FRAMEBUFFER, + GL_DEPTH_ATTACHMENT, + GL_TEXTURE_2D, + sfc->rb_depth_stencil, + 0, sfc->rt_msaa_samples); + glsym_glFramebufferTexture2DMultisample(GL_FRAMEBUFFER, + GL_STENCIL_ATTACHMENT, + GL_TEXTURE_2D, + sfc->rb_depth_stencil, + 0, sfc->rt_msaa_samples); + } + else + { + glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, + GL_TEXTURE_2D, sfc->rb_depth_stencil, 0); + glFramebufferTexture2D(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, + GL_TEXTURE_2D, sfc->rb_depth_stencil, 0); + } glBindTexture(GL_TEXTURE_2D, curr_tex); #else