Best practices to reduce file size and optimize CAD files
08 December 2016 15:38
Hello,
I've been asked a few times about the limitations of WebGL in term of file size and performance, and my answer has been: it depends. For obvious reasons, if you are running the app on the latest CPU and have 4 graphic cards in SLI mods, chances are that there are no lags at all. But we don't always know the end user's PC or tablet specs.
So here is the challenge I am facing. I export Catia files to WRL format and bring them to Blender and use decimate modifier to reduce the polys. For small objects, it's great, file size is usually under 10 meg, but no matter how hard I try with the larger files, that contain a few hundred parts, the exported file becomes huge. And there is no way I can publish 100 meg HTML or JSON/Bin files. (Attached is what the file looks like)
So the question is, how do you optimize CAD files so they are still recognizable, because low poly method has its limitations as well?
Is there a way to load multiple small JSON files? What I have in mind is to load an small HTML file or simply an image and when the user clicks on a section it will open a 3D file. How…not sure.
Thanks in advance.
I've been asked a few times about the limitations of WebGL in term of file size and performance, and my answer has been: it depends. For obvious reasons, if you are running the app on the latest CPU and have 4 graphic cards in SLI mods, chances are that there are no lags at all. But we don't always know the end user's PC or tablet specs.
So here is the challenge I am facing. I export Catia files to WRL format and bring them to Blender and use decimate modifier to reduce the polys. For small objects, it's great, file size is usually under 10 meg, but no matter how hard I try with the larger files, that contain a few hundred parts, the exported file becomes huge. And there is no way I can publish 100 meg HTML or JSON/Bin files. (Attached is what the file looks like)
So the question is, how do you optimize CAD files so they are still recognizable, because low poly method has its limitations as well?
Is there a way to load multiple small JSON files? What I have in mind is to load an small HTML file or simply an image and when the user clicks on a section it will open a 3D file. How…not sure.
Thanks in advance.
08 December 2016 16:00
So the question is, how do you optimize CAD files so they are still recognizable, because low poly method has its limitations as well?For big objects, like shell of an airplane, you can make low-poly version and bake normal map from high-poly. For small objects like tubes is only way to reduce the amount of faces use decimade ot remove extra faces manualy. Because of export from CAD nurbs converted to mesh and even a simple plane converted with huge amount of faces, so you can use a decimate with different setup.
Is there a way to load multiple small JSON files? What I have in mind is to load an small HTML file or simply an image and when the user clicks on a section it will open a 3D file. How…not sure.It's possible via API, look and Petigor's Tale Intro scene, as example.
Blend4web and that kind of thing.
09 December 2016 12:50
Also the "Cartoon Interior" project in the SDK is a good example of loading JSON files. It loads furniture models when an HTML/CSS button is clicked. I have used this as starter files for a couple of projects.