[Webkit-unassigned] [Bug 44926] Multiple accelerated 2D canvases should be able to use the same GraphicsContext3D

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Sep 1 22:04:17 PDT 2010


https://bugs.webkit.org/show_bug.cgi?id=44926





--- Comment #25 from Stephen White <senorblanco at chromium.org>  2010-09-01 22:04:17 PST ---
(From update of attachment 66296)
Other than the mac chrome issue (GraphicsContext.h), looks OK to me.

View in context: https://bugs.webkit.org/attachment.cgi?id=66296&action=prettypatch

> WebCore/html/canvas/CanvasRenderingContext2D.cpp:172
> +            m_drawingBuffer = DrawingBuffer::create(m_context3D.get(), IntSize(canvas()->width(), canvas()->height()));
This looks like it recreates the FBO etc on every reset.  Could be costly.  Perhaps we should be trying to reuse DrawingBuffer around if the context and size is the same.

> WebCore/platform/graphics/GraphicsContext.h:416
> +#if PLATFORM(SKIA)
I'm pretty sure that using #if PLATFORM(SKIA) here and #if ENABLE(ACCELERATED_2D_CANVAS) in CanvasRenderingContext2D is going to cause problems on Mac Chromium, since it has the latter but not the former.

This should either be ENABLE(ACCELERATED_2D_CANVAS) here, or (my preference) it should have a stub implementation for other ports as it did before.

> WebCore/platform/graphics/chromium/DrawingBufferChromium.cpp:95
> +    glCopyTextureToParentTexture(m_internal->offscreenColorTexture, parentTexture);
Hmm.. this is weird.  I guess I should've paid better attention to your GPU process CL.  Anyway, we should probably hide this function behind a google GLES2 extension at some point, if it isn't already.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list