Bug 126470 - [WebGL] Blit operation from Multisample FBO to rendering FBO must ignore GL_SCISSOR test
Summary: [WebGL] Blit operation from Multisample FBO to rendering FBO must ignore GL_S...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebGL (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Brent Fulgham
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-01-03 16:24 PST by Brent Fulgham
Modified: 2014-01-03 16:48 PST (History)
6 users (show)

See Also:


Attachments
Patch (2.32 KB, patch)
2014-01-03 16:30 PST, Brent Fulgham
dino: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Brent Fulgham 2014-01-03 16:24:41 PST
When we use Multisampling to antialias our drawing, we have to Blit from the multisample buffers into the FBO used for rendering to screen.  The drawing portion of this bug was corrected by Bug 126455. However, WebGL code that used glGetPixels would still fail, because the pixel read operations were being done on a buffer that was only partially initialized.

The fix is to make sure our "resolveMultisamplingIfNecessary" operation deactivates the GL_SCISSOR test so that we blit the entire buffer, not just whatever region of memory is activated by the scissor region.
Comment 1 Brent Fulgham 2014-01-03 16:30:12 PST
Created attachment 220352 [details]
Patch
Comment 2 WebKit Commit Bot 2014-01-03 16:32:06 PST
Attachment 220352 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp', '--commit-queue']" exit_code: 1
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:165:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:166:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:167:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:167:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:179:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:181:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
Total errors found: 6 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Brent Fulgham 2014-01-03 16:32:55 PST
(In reply to comment #2)
> Attachment 220352 [details] did not pass style-queue:
> 
> Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp', '--commit-queue']" exit_code: 1
> ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:165:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
> ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:166:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
> ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:167:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
> ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:167:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
> ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:179:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
> ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:181:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
> Total errors found: 6 in 2 files
> 

More false positives.
Comment 4 Brent Fulgham 2014-01-03 16:48:30 PST
Committed r161297: <http://trac.webkit.org/changeset/161297>