A Lot of users are having problems opening my 3mf files on prusaslicer that i generate with bambu studio. it would be nice if it could be shared throught the whole comunity and not limited to 1 slicer … thank you
I have this issue as well; users who download my Bambu Studio 3MF say they cannot open them in PrusaSlicer.
You can open these just fine - but only the geometry info will come through. Studio (and I think PrusaSlicer) will alert you to this when opening the 3MF. Bambu uses extensions to supply additional info that is not part of the core 3MF standard.
I don’t think it’s just Bambu Lab. 3MF files are not compatibles among slicers.
Print profiles will really take off when that happens.
Bambu adds a lot of extra stuff that pertains to their printers. Have you tried exporting as a Generic 3MF and opening in Prusa?
I was initially upset with the fact that the default 3MF files generated by Bambu Studio would generate errors if I tried to open them with Cura or PrusaSlicer. I pushed back to Bambu support, arguing that the files were not “3MF Compliant” if they couldn’t be opened by other slicers, so they shouldn’t use a “.3MF” extension for them. And their reply was that their native 3MF files were compliant, and to use the Export Generic 3MF… export option if you want a 3MF file that can be read by another slicer.
This left me confused, how can they consider their 3MF file format be valid if it can’t be ready by other slicers?
However after reading the 3MF file specification, I realized that the Bambu 3MF files are “3MF Compliant”. A 3MF file is a zipped XML database, which requires at least one XML defined “3D Model” package be included in the file. A 3D Model package defines Objects that, among other things, include Vertices and Triangles, which is basically equivalent to the content of an STL file. You will find a separate 3D Model object in a 3MF file for each part that you see on the print bed. The 3MF spec also defines several optional XML packages that can be included in the file. The problem is that not all slicers support all the optional 3MF packages. And as an XML database, a 3MF files may include XML packages beyond those identified in the 3MF spec or proprietary XML package definitions.
Bambu takes advantage of the 3MF file flexibility by including plate and object definitions in their 3MF files. Concepts which the other slicers do not support, hence they error out on Bambu 3MF. Other slicers should be more robust, parsing the packages in a 3MF file that they understand and reporting the names of the unsupported packages/configurations/relationships/etc. that they find, rather than generate errors and rejecting the file. XML provides mechanisms for doing this. But to get around this problem, Bambu Studio strips the packages from a Generic 3MF export file that the other slicers choke on.
Note that I’m not an expert on XML or the 3MF specification, but I thought it might be useful to communicate what I’ve learned about the Bambu 3MF file format.
Bambu has a great wiki article that dives into this.
https://wiki.bambulab.com/en/software/bambu-studio/3mf-compatibility
They are using the 3MF Production extension
They have submitted pull requests for both Prusa Slicer and Cura to add the Production Extension to the exist ng core standard support, but as of the Wiki article publishing they have not yet received feedback.
Thanks! It would be great if other slicers understood the Bambu extensions.
I saved a multi-plate Bambu 3MF as a generic, and only plate1 was displayed, but the parts on the other plates were floating in space in their original positions.
Is it correct to say that supporting Production Extensions, allows other slicers to open Bambu 3MFs and skip unknown extensions without choking, but to support a extension like multiple plates, doesn’t Bambu need to document their extension so other slicers can support it? That is, are there a separate specs for each extension, e.g., multiple plates, object based properties, etc.?