Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(117)

Issue 6369016: Add GL_CHROMIUM_framebuffer_multisample support to Chromium's... (Closed)

Created:
9 years, 11 months ago by Ken Russell (switch to Gerrit)
Modified:
9 years, 7 months ago
Reviewers:
Zhenyao Mo
CC:
chromium-reviews, darin-cc_chromium.org, apatrick_chromium, brettw-cc_chromium.org, darin (slow to review)
Visibility:
Public.

Description

Add GL_CHROMIUM_framebuffer_multisample support to Chromium's WebGraphicsContext3D implementations. (The GL_EXT_framebuffer_multisample and GL_ANGLE_framebuffer_multisample extensions are advertised in Chrome's command buffer implementation as GL_CHROMIUM_framebuffer_multisample.) Tested manually in WebKit with accelerated 2D canvas with multisampling turned on. This must land before the associated WebKit patch. BUG=none TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=72596

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+44 lines, -0 lines) Patch
M chrome/renderer/webgraphicscontext3d_command_buffer_impl.h View 1 chunk +8 lines, -0 lines 0 comments Download
M chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc View 1 chunk +17 lines, -0 lines 0 comments Download
M webkit/gpu/webgraphicscontext3d_in_process_impl.h View 1 chunk +8 lines, -0 lines 0 comments Download
M webkit/gpu/webgraphicscontext3d_in_process_impl.cc View 1 chunk +11 lines, -0 lines 0 comments Download

Messages

Total messages: 2 (0 generated)
Ken Russell (switch to Gerrit)
Please review. Thanks.
9 years, 11 months ago (2011-01-26 02:02:15 UTC) #1
Zhenyao Mo
9 years, 11 months ago (2011-01-26 02:07:12 UTC) #2
LGTM

On Tue, Jan 25, 2011 at 6:02 PM, <kbr@chromium.org> wrote:

> Reviewers: Zhenyao Mo,
>
> Message:
> Please review. Thanks.
>
>
> Description:
> Add GL_CHROMIUM_framebuffer_multisample support to Chromium's
> WebGraphicsContext3D implementations. (The
> GL_EXT_framebuffer_multisample and GL_ANGLE_framebuffer_multisample
> extensions are advertised in Chrome's command buffer implementation as
> GL_CHROMIUM_framebuffer_multisample.)
>
> Tested manually in WebKit with accelerated 2D canvas with
> multisampling turned on. This must land before the associated WebKit
> patch.
>
> BUG=none
> TEST=none
>
>
> Please review this at http://codereview.chromium.org/6369016/
>
> SVN Base: svn://svn.chromium.org/chrome/trunk/src/
>
> Affected files:
>  M     chrome/renderer/webgraphicscontext3d_command_buffer_impl.h
>  M     chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc
>  M     webkit/gpu/webgraphicscontext3d_in_process_impl.h
>  M     webkit/gpu/webgraphicscontext3d_in_process_impl.cc
>
>
> Index: chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc
> ===================================================================
> --- chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc (revision
> 72421)
> +++ chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc (working
> copy)
> @@ -387,6 +387,23 @@
>   glRequestExtensionCHROMIUM(extension);
>  }
>
> +void WebGraphicsContext3DCommandBufferImpl::blitFramebufferCHROMIUM(
> +    int srcX0, int srcY0, int srcX1, int srcY1,
> +    int dstX0, int dstY0, int dstX1, int dstY1,
> +    unsigned mask, unsigned filter) {
> +  glBlitFramebufferEXT(srcX0, srcY0, srcX1, srcY1,
> +                       dstX0, dstY0, dstX1, dstY1,
> +                       mask, filter);
> +}
> +
> +void WebGraphicsContext3DCommandBufferImpl::
> +    renderbufferStorageMultisampleCHROMIUM(
> +        unsigned long target, int samples, unsigned internalformat,
> +        unsigned width, unsigned height) {
> +  glRenderbufferStorageMultisampleEXT(target, samples, internalformat,
> +                                      width, height);
> +}
> +
>  // Helper macros to reduce the amount of code.
>
>  #define DELEGATE_TO_GL(name, glname)                                    \
> Index: chrome/renderer/webgraphicscontext3d_command_buffer_impl.h
> ===================================================================
> --- chrome/renderer/webgraphicscontext3d_command_buffer_impl.h  (revision
> 72421)
> +++ chrome/renderer/webgraphicscontext3d_command_buffer_impl.h  (working
> copy)
> @@ -364,6 +364,14 @@
>   virtual WebKit::WebString getRequestableExtensionsCHROMIUM();
>   virtual void requestExtensionCHROMIUM(const char*);
>
> +  virtual void blitFramebufferCHROMIUM(
> +      int srcX0, int srcY0, int srcX1, int srcY1,
> +      int dstX0, int dstY0, int dstX1, int dstY1,
> +      unsigned mask, unsigned filter);
> +  virtual void renderbufferStorageMultisampleCHROMIUM(
> +      unsigned long target, int samples, unsigned internalformat,
> +      unsigned width, unsigned height);
> +
>   virtual unsigned createCompositorTexture(unsigned width, unsigned
> height);
>   virtual void deleteCompositorTexture(unsigned parent_texture);
>   virtual void copyTextureToCompositor(unsigned texture,
> Index: webkit/gpu/webgraphicscontext3d_in_process_impl.cc
> ===================================================================
> --- webkit/gpu/webgraphicscontext3d_in_process_impl.cc  (revision 72421)
> +++ webkit/gpu/webgraphicscontext3d_in_process_impl.cc  (working copy)
> @@ -672,6 +672,17 @@
>  void WebGraphicsContext3DInProcessImpl::requestExtensionCHROMIUM(const
> char*) {
>  }
>
> +void WebGraphicsContext3DInProcessImpl::blitFramebufferCHROMIUM(
> +    int srcX0, int srcY0, int srcX1, int srcY1,
> +    int dstX0, int dstY0, int dstX1, int dstY1,
> +    unsigned mask, unsigned filter) {
> +}
> +
> +void
> WebGraphicsContext3DInProcessImpl::renderbufferStorageMultisampleCHROMIUM(
> +    unsigned long target, int samples, unsigned internalformat,
> +    unsigned width, unsigned height) {
> +}
> +
>  // Helper macros to reduce the amount of code.
>
>  #define DELEGATE_TO_GL(name, glname)
>     \
> Index: webkit/gpu/webgraphicscontext3d_in_process_impl.h
> ===================================================================
> --- webkit/gpu/webgraphicscontext3d_in_process_impl.h   (revision 72421)
> +++ webkit/gpu/webgraphicscontext3d_in_process_impl.h   (working copy)
> @@ -75,6 +75,14 @@
>   virtual WebKit::WebString getRequestableExtensionsCHROMIUM();
>   virtual void requestExtensionCHROMIUM(const char*);
>
> +  virtual void blitFramebufferCHROMIUM(
> +      int srcX0, int srcY0, int srcX1, int srcY1,
> +      int dstX0, int dstY0, int dstX1, int dstY1,
> +      unsigned mask, unsigned filter);
> +  virtual void renderbufferStorageMultisampleCHROMIUM(
> +      unsigned long target, int samples, unsigned internalformat,
> +      unsigned width, unsigned height);
> +
>   virtual void activeTexture(unsigned long texture);
>   virtual void attachShader(WebKit::WebGLId program, WebKit::WebGLId
> shader);
>   virtual void bindAttribLocation(
>
>
>

Powered by Google App Engine
This is Rietveld 408576698