RESOLVED FIXED Bug 77922
Apple/Safari: Enable WebGL multisampling on ATI cards for particular builds
https://bugs.webkit.org/show_bug.cgi?id=77922
Summary Apple/Safari: Enable WebGL multisampling on ATI cards for particular builds
Dean Jackson
Reported 2012-02-06 18:22:57 PST
Currently GraphicsContext3DOpenGLCommon validates the incoming antialias attribute and only enables it for NVIDIA cards. Chromium allows multisampling on OS X + ATI when on 10.7.2 and above. For more info: http://code.google.com/codesearch#OAMlx_jo-ck/src/chrome/browser/resources/software_rendering_list/software_rendering_list.json&exact_package=chromium&ct=rc&cd=1&q=software_rendering_list.json http://src.chromium.org/viewvc/chrome/trunk/deps/gpu/software_rendering_list/software_rendering_list.json?view=log
Attachments
Patch (2.57 KB, patch)
2012-02-06 19:43 PST, Dean Jackson
no flags
Patch (2.62 KB, patch)
2012-02-06 19:52 PST, Dean Jackson
cmarrin: review+
Radar WebKit Bug Importer
Comment 1 2012-02-06 18:23:54 PST
Kenneth Russell
Comment 2 2012-02-06 18:39:54 PST
zmo's responsible for Chromium's GPU blacklist and could help advise on changes in this area. Though this is far beyond the scope of this issue, it would be fantastic if we could figure out how to share the GPU blacklist information not only between WebKit ports but also between browsers.
James Robinson
Comment 3 2012-02-06 18:45:10 PST
Firefox exposes their blacklisting info on this wiki: https://wiki.mozilla.org/Blocklisting/Blocked_Graphics_Drivers. It looks like they've taken a slightly different approach to MSAA, quoting from the version currently there: "For MSAA, we block all ATI cards except for AMD Radeon HD 6490M (device id 0x6760) and ATI Radeon HD 4670 (device id 0x9488). See Chromium issue 83153 [1]."
Kenneth Russell
Comment 4 2012-02-06 18:48:13 PST
zmo recently verified that even older ATI hardware seems to support multisampled frame buffer objects well with 10.7.2, where the same cards hung while creating a multisampled renderbuffer on earlier versions of Mac OS. That informed Chrome's decision to stop blacklisting ATI cards on 10.7.
Dean Jackson
Comment 5 2012-02-06 19:43:31 PST
Dean Jackson
Comment 6 2012-02-06 19:47:46 PST
(In reply to comment #2) > Though this is far beyond the scope of this issue, it would be fantastic if we could figure out how to share the GPU blacklist information not only between WebKit ports but also between browsers. Definitely! I expect we'll (Apple'll) will always lag on this while WebGL is disabled by default. It would be so much nicer for us if there was a shared system.
Early Warning System Bot
Comment 7 2012-02-06 19:47:47 PST
Dean Jackson
Comment 8 2012-02-06 19:49:22 PST
Comment on attachment 125754 [details] Patch breaks QT
Dean Jackson
Comment 9 2012-02-06 19:52:19 PST
Dean Jackson
Comment 10 2012-02-07 09:36:36 PST
Alexey Proskuryakov
Comment 11 2012-02-07 10:00:20 PST
Comment on attachment 125756 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=125756&action=review > Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:63 > + static SInt32 version; I recommend always adding ASSERT(isMainThread()) in functions that use static variables. > Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:69 > + return version > 0x1072; This doesn't match comments or description in ChangeLog (should be ">="?)
Dean Jackson
Comment 12 2012-02-07 10:06:44 PST
(In reply to comment #11) > (From update of attachment 125756 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=125756&action=review > > > Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:63 > > + static SInt32 version; > > I recommend always adding ASSERT(isMainThread()) in functions that use static variables. I'll fix this. > > Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:69 > > + return version > 0x1072; > > This doesn't match comments or description in ChangeLog (should be ">="?) Indeed! Sorry.
Dean Jackson
Comment 13 2012-02-07 11:19:22 PST
Note You need to log in before you can comment on or make changes to this bug.