WebGL is not supported

Description of the issue:
When I am using JupyterLab when you try do 3D Scatter plot it fails to render giving the following error:
WebGL is not supported by your browser - visit https://get.webgl.org for more info.

Steps to Reproduce (add as many as necessary): 1. 2. 3.
install JupyterLab for python3
code is at the pastebin address to run in JupyterLab.
https://pastebin.com/Ytk3hue4
Actual Result (gifs and screenshots are welcome!):


Expected result:

Reproduces how often:
Always reproducible. Brave always fails to render the WebGL even after going into brave://flags.
The expected result is rendered from Microsoft Edge because Brave doesn’t work.
Operating System and Brave Version(See the About Brave page in the main menu):
Microsoft Windows 10.0.18362
Version 0.70.121 Chromium: 78.0.3904.70 (Official Build) (64-bit)
Additional Information:
Even if you enable WebGL 2.0 Compute in brave://flags, it still fails to render.
WebGL worked just fine in Google Chrome.
When you go to the get webgl site it says that webgl works fine and has no problems.

the signin is a placeholder and you need your own log in to get this to work.

Is there an easier way to test this than needing to install JupyterLab? anyways, I just tested this on webgl.org.

Assuming you have the up to date display drivers, I got this.

brave://gpu should give you something similar to this; (ensure hardware acceleration is enabled in brave options.)

I found https://www.khronos.org/registry/webgl/sdk/tests/webgl-conformance-tests.html?version=2.0.1
https://www.khronos.org/registry/webgl/sdk/tests/webgl-conformance-tests.html?version=1.0.4

I ran the following tests and got the following results on Brave and Google Chrome:
WebGL Chrome 1.0.4 results
WebGL Brave 1.0.4 results
Brave timed out a lot more often the Chrome did.

paste your brave://gpu

brave gpu
WebGL Brave 2.0.1

1. WebGL: Hardware accelerated
2. WebGL2: Hardware accelerated

Hmm okay, can you try reinstall the graphic drivers with latest nvidia drivers.

The test from khronos times out a lot but, Google Chrome doesn’t time out.
WebGL Chrome 2.0.1
So this is, as far as I can see, a problem on Brave, not on Google Chrome.

I just did a clean install of my nVidia drivers and I am still having the same problems with brave not rendering things correctly in JupyterLab.

I did not “uninstall and reinstall” my video card drivers cause unless you know what you are doing you can mess up your computer doing that.

Reason I say re-install, I noticed the age of the drivers from the paste; 388.59. Even just install the latest drivers would help here.

I have 440.97 installed for my gtx 1080.
Here is my GPU information if you really want to know it:
gpu info

http://madebyevan.com/webgl-water/ Does that work? Could try from a new brave profile if it doesn’t?

Or test in Brave Beta Build, if a new profile isn’t optimal.

yes. webgl water works. every single webgl demo I’ve found works.
I do not know why there is only a problem with just JupyterLab.

I just installed the Brave beta and it is also not working in there.

Does turning off sheilds make a difference?

yes. Disabling shields does fix it and, Jupyter Lab works with shields off.
Jupyter Lab runs on the localhost. It is part of my Python installation.

@whitequill @fanboynz,
It’s probably a Device Recognition issue. Try turning Shields Up in the Shields panel, but set the Device recognition setting to All device recognition attempts allowed.

@Mattches
Thank you. Setting All device recognition attempts allowed, does fix this issue too.
Is there something that can be done so that this doesn’t always need to be set cause this isn’t an obvious fix for people not familiar with Brave Shield when running something on localhost.

@whitequill,
We have some Help Center content that may help you (and others) clear things up:
https://support.brave.com/hc/en-us/categories/360001053072-Shields

Note that per-site Shields settings are persist across sessions. So you (or others) only have to change this setting once.

How is Brave going to make the greater community that uses Jupyter, Chart Studio/Plotly, aware that this setting needs to be set when using some modules?

@whitequill,
In the Shields documentation, it addresses each different protection offered and how they may effect web browsing. Taken directly from the doc:

Device Recognition

Even without the use of cookies, some websites can identify the way your browser and device differ from others in order to recognize you based on your unique combination of these traits. This is approach is called “Fingerprinting” or “Device Recognition”.

Enabling this setting makes it harder to capture that data by turning off many features commonly used to differentiate between devices. Not all fingerprinting is used in this way - sites that host online games, display maps or allow audio/video editing will use these techniques legitimately. The features turned off by this setting are not designed with the intent to track you, but they can be used to do so.

Brave blocks these attempts for third-party sites by default. If you disable them for all sites, some rich web applications may break.

With Brave, the idea would be to teach users how to use the browser in general so they can assess and work out issues on their own as they’re encountered.