The way WebGL is implemented in most browsers prevents Upscope from grabbing the content of the canvas. You can make a few changes to your code to allow Upscope to work with WebGL.
Option 1: Change your code
Somewhere in your code, you'll be grabbing the webGL context by doing:
canvas.getContext('webgl')
This needs to be changed into this:
canvas.getContext('webgl', { preserveDrawingBuffer: true })
Option 2: Monkey-patching the code
If you don't want to edit your code, or don't know how to; or simply want to test that this approach works before making changes, you can add the following code right below the Upscope installation code to automatically apply the above change everywhere:
<script>
HTMLCanvasElement.prototype.__getContext = HTMLCanvasElement.prototype.getContext;
HTMLCanvasElement.prototype.getContext = function(t, ...args) {
if(t === 'webgl') return this.__getContext('webgl', { preserveDrawingBuffer: true });
return this.__getContext(t, ...args);
}
</script>