I’m currently facing an issue with loading a 500MB STL file in Babylon.js. I previously asked a similar question about a 200MB file, and that issue was resolved. However, now I’m encountering problems with the larger file. I’ve tried loading it in the sandbox, but it’s not showing any response. Could you please provide guidance on how to resolve this issue?
Can’t you just convert this stl to a less heavy format? Honestly, 500mb is just a hell of a lot. Even if it makes it through, I’m wondering who will want to wait until it’s fullly loaded. Then, I guess the other thing is/could be how many nodes/meshes are in this model?
I would expect your browser to freeze and possibly run out of memory, but it depends on many different factors. I would also expect a single frame to take a long time to render (if the mesh is so complex).
@RaananW After Babylon platform updated it’s loader plugin, browser freeze issue got resolved. But still the model is not loaded. The limit of the size of the loading model is increased a bit but not as per our requirement.
And @carolhmj , yes the models are loading fin in these 3D viewers.
i’m a bit at a loss. I thought those were STL files? the 2nd viewer is a glTF viewer.
It would be good if you could share one model so we can test this. it shouldn’t be an issue (apart of high CPU/GPU usage) to render large models. if the hardware supports it, it should work as expected.
Having said that, I don’t really know how to fix it on our side… Maybe we could try to split the input buffer when it is too big, but it would probably mean some non straightforward changes to the stl loader…
[EDIT] One thing that should work, looking at the code, is to convert the stl file to binary, as currently it’s a text file.
if it is possible to process STL in chunks, then yes. I don’t know STL well enough to tell you whether or not it is possible, but TBH - i am not sure it is.
Otherwise we are still with the same string limit.
I am not sure how to generate a binary STL, but if it is possible to do that programmatically, then @Evgeni_Popov suggestion would be the best path for you.