supermerill / SuperSlicer

G-code generator for 3D printers (Prusa, Voron, Creality, etc.)
4.04k stars 514 forks source link

Postprocessing scripts for SLA printing #4172

Open kozross opened 4 months ago

kozross commented 4 months ago

Is your feature request related to a problem? Please describe.

Thanks to UVTools, you can easily convert .sl1 files into a range of formats, which means you can use a large number of non-Prusa resin printers with SuperSlicer. However, we can only slice as .sl1, and then have to post-process each file manually using UVTools' CLI, which is tedious, and can't be done with SuperSlicer's post-processing support for FDM printers, as SLA printer profiles have no such option at present.

Describe the solution you'd like

The ability to post-process files sliced for SLA printers, like we can for FDM ones currently.

Describe how it would work

Similar to the 'Post processing script' entry in 'Output options' for FDM print profiles (in fact, identically to it). Since these modify in-place by default (and I'm unsure if UVTools can support that), it might require a bit of extra work: essentially, have UVTools generate a file with the same name, then delete the original, or something.

Describe alternatives you've considered

Currently, the only workflow that we can use at the moment is:

  1. Slice as an sl1.
  2. Export the sliced file somewhere.
  3. Go there, and either run UVTools from the CLI manually, or via a script.
  4. Copy the resulting file to a USB stick by hand.

While this works, it's many steps longer than if we could post-process as described above.

Additional context

It would be even better if we could integrate UVTools as a helper (assuming it's installed and available on the path) more directly, allowing us immediate access to many more profiles (and printers). This would be even better, but would require considerably more work than what I'm proposing here.