[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Public WebGL] Uses of WEBGL_debug_renderer_info

It's very useful for us; here are our two main use cases:

1) We use it very extensively to report user GPU in our automatic error reporting tools. When we need to reproduce shader bugs it's invaluable. We found many shader bugs directly linked to specific GPU vendors/renderers. From visual artifact to compilation errors all tied to very specific vendor/renderer (Intel branching error, PowerVR glsl compiler not supporting vec4 arrays as function parameter, implicit cast fails in some cases on Mali, etc...). And Compiler Error messages are not enough "Internal compiler error: Too many vertex shader constants" (Adreno/android4.x.x favorite)

2) We also use it to warn users when they are switched to "software webgl acceleration " (Due to too many GPU crashes and Chrome reverting to SwiftShader)
e.g. "if (   gl.getParameter(debugInfo.UNMASKED_RENDERER_WEBGL) === 'Google SwiftShader' )". Otherwise users might think the Sketchfab render is very slow, using their laptop batteries, and pushing laptop fan to the max where just restarting/reloading chrome fixes it.