Webgl2 avaibility check crash tab into a gpu debug page
Reported by
p...@sketchfab.com,
May 11 2017
|
||
Issue descriptionSteps to reproduce the problem: 1.using android oneplusone goto https://sketchfab.com/models/9d1e91bbcfe54ffa9e39658c8cc45684?webgl2=1 2. if not get a blank page with debug error with gpu infos reload once or twice until you get it What is the expected behavior? getting a webgl1 pages, not an error page What went wrong? trying to check availibility of webgl2 on computer/gpu/phone without webgl2 on some gpu/computer/phone gives a "debug page" to user with that url option, code check if webgl2 is availaible and if it's not available fallback to webgl1 see here - https://github.com/cedricpinson/osgjs/blob/master/sources/osgViewer/webgl-utils.js#L152 - https://github.com/cedricpinson/osgjs/blob/master/sources/osg/WebGLCaps.js#L128 Did this work before? N/A Does this work in other browsers? Yes Chrome version: 58.0.3029.83 Channel: stable OS Version: 6.0.1 Flash Version: Shockwave Flash 25.0 r0 we reproduce also on - dell ubuntu xps
,
May 11 2017
,
May 11 2017
note that reloading page with ?webgl2=0 (without checking for webgl2 avaibility) in the same tab just after works.
,
May 11 2017
WebGL2 is blacklisted on that Qualcomm GPU. If you look at the about:gpu page, you will see the following lines: """ Some old Qualcomm scissor bug workaround needs disabling MSAA to work, which is a core part of WebGL 2.: 670607, 696627, 698197 Disabled Features: webgl2 """ So it's not a crash, it's simply displaying the error message to users, which is part of the js, not part of Chrome.
,
May 11 2017
ok found the error thanks to you. here: https://github.com/cedricpinson/osgjs/blob/master/sources/osgViewer/webgl-utils.js#L113 As before browser error message contained webgl2 whereas now it doesn't which is a problem no?
,
May 11 2017
as message should be 'Could not create a WebG2L context' rather than Could not create a WebGL context
,
May 11 2017
I don't believe there is any guarantee in the WebGL 1.0 or 2.0 specs of the contents of that string. Programs should not rely on its wording.
,
May 11 2017
1) App code should not depend on behaviors that are not in the spec, because implementations can change it anytime. 2) I checked our code base, it seems on WebGL2 context creation failure, our error message does use "WebGL2" instead "WebGL". I don't know why WebGL2 isn't there. Need to dig a bit.
,
May 11 2017
yes, will change code anyway on our side, thanks again for the help. |
||
►
Sign in to add a comment |
||
Comment 1 by p...@sketchfab.com
, May 11 2017