Chromium Code Reviews| Index: src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp |
| =================================================================== |
| --- src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp (revision 10891) |
| +++ src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp (working copy) |
| @@ -149,6 +149,8 @@ |
| interface->fDeleteRenderbuffers = glDeleteRenderbuffers; |
| interface->fFramebufferRenderbuffer = glFramebufferRenderbuffer; |
| interface->fFramebufferTexture2D = glFramebufferTexture2D; |
| + |
| +#if GR_GL_IGNORE_ES3_MSAA |
|
robertphillips
2013/08/23 17:25:34
could these two if blocks be shared with the !GR_G
bsalomon
2013/08/23 17:28:49
They don't use ES2APPLE or ES2EXT. It'll also be a
|
| if (extensions.has("GL_EXT_multisampled_render_to_texture")) { |
| #if GL_EXT_multisampled_render_to_texture |
| interface->fFramebufferTexture2DMultisample = glFramebufferTexture2DMultisampleEXT; |
| @@ -166,6 +168,37 @@ |
| interface->fRenderbufferStorageMultisample = (GrGLRenderbufferStorageMultisampleProc) eglGetProcAddress("glRenderbufferStorageMultisampleIMG"); |
| #endif |
| } |
| + |
| +#else // GR_GL_IGNORE_ES3_MSAA |
| + |
| + if (version >= GR_GL_VER(3,0)) { |
| +#if GL_ES_VERSION_3_0 |
| + interface->fRenderbufferStorageMultisample = glRenderbufferStorageMultisample; |
| + interface->fBlitFramebuffer = glBlitFramebuffer; |
| +#else |
| + interface->fRenderbufferStorageMultisample = (GrGLRenderbufferStorageMultisampleProc) eglGetProcAddress("glRenderbufferStorageMultisample"); |
| + interface->fBlitFramebuffer = (GrGLBlitFramebufferProc) eglGetProcAddress("glBlitFramebuffer"); |
| +#endif |
| + } |
| + if (extensions.has("GL_EXT_multisampled_render_to_texture")) { |
| +#if GL_EXT_multisampled_render_to_texture |
| + interface->fFramebufferTexture2DMultisample = glFramebufferTexture2DMultisampleEXT; |
| + interface->fRenderbufferStorageMultisampleES2EXT = glRenderbufferStorageMultisampleEXT; |
| +#else |
| + interface->fFramebufferTexture2DMultisample = (GrGLFramebufferTexture2DMultisampleProc) eglGetProcAddress("glFramebufferTexture2DMultisampleEXT"); |
| + interface->fRenderbufferStorageMultisampleES2EXT = (GrGLRenderbufferStorageMultisampleProc) eglGetProcAddress("glRenderbufferStorageMultisampleEXT"); |
| +#endif |
| + } else if (extensions.has("GL_IMG_multisampled_render_to_texture")) { |
| +#if GL_IMG_multisampled_render_to_texture |
| + interface->fFramebufferTexture2DMultisample = glFramebufferTexture2DMultisampleIMG; |
| + interface->fRenderbufferStorageMultisampleES2EXT = glRenderbufferStorageMultisampleIMG; |
| +#else |
| + interface->fFramebufferTexture2DMultisample = (GrGLFramebufferTexture2DMultisampleProc) eglGetProcAddress("glFramebufferTexture2DMultisampleIMG"); |
| + interface->fRenderbufferStorageMultisampleES2EXT = (GrGLRenderbufferStorageMultisampleProc) eglGetProcAddress("glRenderbufferStorageMultisampleIMG"); |
| +#endif |
| + } |
| +#endif // GR_GL_IGNORE_ES3_MSAA |
| + |
| interface->fGenFramebuffers = glGenFramebuffers; |
| interface->fGenRenderbuffers = glGenRenderbuffers; |
| interface->fGetFramebufferAttachmentParameteriv = glGetFramebufferAttachmentParameteriv; |