Rendering bug on Mozilla

Hello,

We are using Cesium as a widget in one of our applications. We are encountering problems to run the widget on Firefox browsers.
The error indicates that the rendering has been stopped due to browser incompatibility. I think it is not a problem with Webgl or the GPU, since it works fine on Edge.

Moreover, we tried to capture that error in order to display a message asking the user to change browser if some problem occur, but the error is still displayed despite surrounding the Cesium code with a try/catch in javascript.

Do you have any idea as to what can cause this problem exactly and how to either solve it or correctly catch it ?

PS : our client has very strong security constraints, so we may not be able to perform certain tests or workarounds, especially if it implies managing their computer configuration.

Thanks in advance,

Here is the js code extract :

const showUI = false;
try{
this.viewer = new Cesium.Viewer(‘cesiumContainer’, {
// terrainProvider: Cesium.createWorldTerrain(),

            // Use Cesium World Terrain
            // terrain: Cesium.Terrain.fromWorldTerrain({
            //     requestWaterMask: true,
            //     requestVertexNormals: true,
            // }),

            //TODO: move credit outside view but doesn't seems to place properly on page
            // creditContainer: "creditContainersqd",
            shadows: true,
            targetFrameRate: 30,

            showRenderLoopErrors: true,

            //disable UI element
            animation: showUI,
            baseLayerPicker: showUI,
            geocoder: showUI,
            fullscreenButton: showUI,
            vrButton: showUI,
            homeButton: true,
            infoBox: true,
            sceneModePicker: showUI,
            selectionIndicator: showUI,
            timeline: showUI,
            navigationHelpButton: true,
            navigationInstructionsInitiallyVisible: true,
            projectionPicker: showUI,
        });

        // add offline  layer
        const lLayers = this.viewer.scene.globe.imageryLayers;
        lLayers.remove(lLayers.get(0));
        const lDefaultLayer = new Cesium.ImageryLayer(
            await Cesium.TileMapServiceImageryProvider.fromUrl("static/maps/NaturalEarthII"),
            {}
        );
        lLayers.add(lDefaultLayer, 0);
        // mGlobe = mScene.globe;
        // surement aller chercher dans le nodemodules
        this.viewer.terrainProvider =  new Cesium.EllipsoidTerrainProvider();


        // add rounded corner to cesium canva
        this.viewer.canvas.style.borderRadius = "8px";

        // hide entities that are underground level
        this.viewer.scene.globe.depthTestAgainstTerrain = false;

        this.onPaginationVersionUpdate()
    } catch (e){
        console.error(e);
        this.canDiplay = false;
    }

Hi @pkimmel, sorry you’re having issues with the viewer. I’m not able to reproduce any errors using the code you provided in Firefox. Are you able to provide a minimal Sandcastle example that triggers the error? That will help us tracking it down.

Would you also be able to provide the system and browser version information? it’s possible it’s specific to a specific setup.

I will try to run sandcastle examples but I’m not sure it will succeed since the environment is very harshly controlled.

As for configuration, here are the informations I have, I can gather more if needed:

  • OS is Windows 10
  • Graphic card is AMD Radeon Vega 6 Graphics
  • Browser is Mozilla Firefox 102.10.0esr

Note that we don’t necessary need the error to be fixed (since it works well on Edge), but we sould really like to be able to catch the error in order to display a more user-friendly message instead.

Thanks,

We tried accessing the sandbox, we get the same error