G.save('name.html', viewer='threejs')
<script src="/nbextensions/threejs/build/three.min.js"></script>
<script>
if ( !window.THREE ) document.write(' \
<script src="https://cdn.jsdelivr.net/gh/sagemath/threejs-sage@122/build/three.min.js"><\/script> \
');
</script>
However from the tree.js example in the website I get:
<script src="https://cdn.jsdelivr.net/gh/mrdoob/three.js@r110/build/three.min.js"></script>
<script src="https://cdn.jsdelivr.net/gh/mrdoob/three.js@r110/examples/js/controls/OrbitControls.js"></script>
However, this is not quite right because it's an older version of mrdoob's version of three.js.
What works is:
<script src="https://cdn.jsdelivr.net/gh/mrdoob/three.js@r117/build/three.min.js"></script>
<script src="https://cdn.jsdelivr.net/gh/mrdoob/three.js@r117/examples/js/controls/OrbitControls.js"></script>
Now the link:
https://cdn.jsdelivr.net/gh/sagemath/threejs-sage@122/build/three.min.js
is broken, so I think that's where the error started. A quick fix would be for someone with access to the sage user's CDN to merge the files three.min.js and OrbitControls.js and upload them to https://cdn.jsdelivr.net/gh/sagemath/threejs-sage@122/build/three.min.js. A quick hack I know, but I'm not sure where it is in the source code to fix it and push a commit such that it's fixed in 9.4.
Best,
RJ Acuña