If you are using older hardware (like me) it may be because it does not support WebGL2, legacy works OK with WebGL (i.e v1). To see if this is the problem check the top of the console and you will see something like this
USING WEBGL ACCELERATION...
vtt.bundle.c4eaff008ae9d574f7ac.js:49365 WEBGL STARTUP SUCCESS
vtt.bundle.c4eaff008ae9d574f7ac.js:6178 Activating Jumpgate/Legacy Bridge
BJS - [15:45:18]: Babylon.js v7.10.2 - WebGL1
vtt.bundle.c4eaff008ae9d574f7ac.js:6725 Uncaught TypeError: Cannot read properties of undefined (reading 'getContext')
at new nx (vtt.bundle.c4eaff008ae9d574f7ac.js:6725:18207)
at new bn (vtt.bundle.c4eaff008ae9d574f7ac.js:6752:25008)
at HTMLDocument.<anonymous> (vtt.bundle.c4eaff008ae9d574f7ac.js:49445:2440)
at fire (jquery-1.9.1.js:1037:30)
at Object.fireWith [as resolveWith] (jquery-1.9.1.js:1148:7)
at Function.ready (jquery-1.9.1.js:433:13)
at HTMLDocument.completed (jquery-1.9.1.js:103:11)
It looks like jumpgate attempts to support WebGL (v1) but there is an obvious bug on the line
const BA = (Ue = ne.canvas.getContext("webgl2")) != null ? Ue : this.canvas.getContext("webgl");
causing the failure.