Rendering has stopped : Not enough memory

1. A concise explanation of the problem you're experiencing.

Hello,

I'm just starting with Cesium. I'm trying to show textured 3D file (a CityGML native file with several buildings inside - all textured). I used FME to convert CityGML into b3dm. The result was 503 b3dm files (538 Mo for all these files). When I modified the CityGML file to just have 5 ou 6 buildings, it works. But when I try to see all buildings, I see earth and when I zoom to the right place, the internet browser crashes with the following message :

Error: Not enough memory

   at loadImageFromTypedArray (http://www.decision3d.fr/cesium_1.37/Source/Core/loadImageFromTypedArray.js:24:9)
   at loadTexturesFromBufferViews (http://www.decision3d.fr/cesium_1.37/Source/Scene/Model.js:2213:17)
   at createResources (http://www.decision3d.fr/cesium_1.37/Source/Scene/Model.js:3681:13)
   at Model.prototype.update (http://www.decision3d.fr/cesium_1.37/Source/Scene/Model.js:4571:21)
   at Batched3DModel3DTileContent.prototype.update (http://www.decision3d.fr/cesium_1.37/Source/Scene/Batched3DModel3DTileContent.js:450:9)
   at Cesium3DTile.prototype.process (http://www.decision3d.fr/cesium_1.37/Source/Scene/Cesium3DTile.js:1035:9)
   at processTiles (http://www.decision3d.fr/cesium_1.37/Source/Scene/Cesium3DTileset.js:1318:13)
   at Cesium3DTileset.prototype.update (http://www.decision3d.fr/cesium_1.37/Source/Scene/Cesium3DTileset.js:1663:13)
   at PrimitiveCollection.prototype.update (http://www.decision3d.fr/cesium_1.37/Source/Scene/PrimitiveCollection.js:365:13)
   at updatePrimitives (http://www.decision3d.fr/cesium_1.37/Source/Scene/Scene.js:2458:9)

2. A minimal code example. If you've found a bug, this helps us reproduce and repair it.

Here is my javascript code :

// Power Plant design model provided by Bentley Systems
var viewer = new Cesium.Viewer('cesiumContainer');

var tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({
    url : '../../../../RD/BH/BordeauxLargeExistantGML'
}));
tileset.readyPromise.then(function() {
    viewer.camera.lookAtTransform(Cesium.Matrix4.IDENTITY);
}).otherwise(function(error) {
    throw(error);
});

3. Context. Why do you need to do this? We might know a better way to accomplish your goal.
We develop a standalone software to visualize IFC and CityGML file and we are looking to see existing solution to visualize these data in a web browser.

4. The Cesium version you're using, your operating system and browser.
I used 1.37 (with Chrome 60.0.3112.113 (Build officiel) (64 bits) and IE)

You could perhaps use FireFox?
I encountered the same problem with chrome, but was able to visualize them in Firefox...

yet still waiting for a solution with Chrome as well.

Some other ideas are to increase the tileset’s maximumScreenSpaceError and set the tileset’s maximumMemoryUsage to 0. Another option is to produce a tileset with smaller textures. We could also try tiling your data for better performance as we’ve worked with heavy-texture tilesets in the past - see https://groups.google.com/d/msg/cesium-dev/xLkYIuku9hA/t_AxUBepAgAJ.

Thank you all. Youe are right, it is better with Firefox than Chrome. No crash, but it is still too long to display all b3dm files. I will have a look on solutions proposed by Sean (and FME export also).