Joined: Nov 7, 2005
Post Count: 5354
I recently was in contact with a user of Sweet Home 3D who uses very often the list of recent textures in the textures choice dialog box to copy a texture from a material of an object to a different one. She used this tip so often with versions of Sweet Home 3D older than 5.2 that some of her files were larger than 50 GB! This is not a typo, you correctly read GB and not MB!
Beside the amazing fact that Sweet Home 3D was still able to read and write such huge files (with a lot of patience), I couldn't let her continue to lose her time on this bug. There was no problem with brand new files made with version 5.2, but as soon as she copied/pasted some objects coming from sh3d files designed with older versions, there was a risk that the final file get uselessly huge.
As she wasn't able to fix the .sh3d files by herself, I finally programmed a small tool named Huge File Cleaner that removes useless entries in her .sh3d files. She successfully tested this tool on different files (which are now always smaller than 100 MB), that's why I propose this tool here (7 KB - source code included) too, in case you encounter the same problem.
The tool is a Jar executable file, so once downloaded, just double click on it to launch it if Java is installed on your computer. The tool will request you to select a .sh3d file to fix, will analyze the file, and if it founds a potential issue, it will request to select another .sh3d file where the fixed file will be saved (files must be different). Then, starts the operation that copies only necessary files from the buggy .sh3d to the destination file. At the end, just check the saved file in Sweet Home 3D.
Note that the destination file is always compressed, so it may be much smaller just because the original file wasn't compressed.
Emmanuel Puybaret, Sweet Home 3D developer
[May 11, 2016 9:29:04 AM]