I was trying to use a website in Chrome which used WebGL through an RDP session to a Virtual Server 2016 (VMware) but was hitting an error about WebGL disabled.

There are various posts on the Google product forums but I couldn’t find the definitive fix there, although they pointed me in the right direction, in Chrome:

chrome://settings

  • Make sure use Hardware Acceleration is enabled

chrome://flags

  • Override software rendering list Mac, Windows, Linux, Chrome OS, Android
    Overrides the built-in software rendering list and enables GPU-acceleration on unsupported system configurations.  – set to ENABLED
  • Accelerated 2D canvas Mac, Windows, Linux, Chrome OS, Android
    Enables the use of the GPU to perform 2d canvas rendering instead of using software rendering.  – set to ENABLED
  • WebGL Draft Extensions Mac, Windows, Linux, Chrome OS, Android
    Enabling this option allows web applications to access the WebGL Extensions that are still in draft status.
  • WebGL Draft Extensions Mac, Windows, Linux, Chrome OS, Android
    Enabling this option allows web applications to access the WebGL Extensions that are still in draft status.  – set to ENABLED (if required)
  • WebGL 2.0 Mac, Windows, Linux, Chrome OS, Android
    Allow web applications to access WebGL 2.0.  – set to ENABLED

Restart Chrome and…bingo – it seems nobody enabled the top option, to override the GPU blacklist

I found this from a recent Life Hacker article on how to disable YouTube Video Ads:

  1. Open up a YouTube video (any will do).
  2. Open up the developer console (Ctrl-Shift-J for Chrome, Ctrl-Shift-K for Firefox)
  3. Enter the following code:
document.cookie="VISITOR_INFO1_LIVE=oKckVSqvaGw; path=/; domain=.youtube.com";window.location.reload();

Or just use Ad Block Plus for Chrome