prusa3d / PrusaSlicer

G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)
https://www.prusa3d.com/prusaslicer/
GNU Affero General Public License v3.0
7.8k stars 1.94k forks source link

A few small changes that I think would make Prusaslicer better (or at least make me use it) #10168

Open LiterallyKey opened 1 year ago

LiterallyKey commented 1 year ago

TLDR: I love mouse ears and is the #1 reason why I primarily prefer Superslicer over Prusaslicer. Superslicer's implementation could just be copied for a (I assume) simple way to make Prusaslicer better, but there are also some potential ways to make it even better. I would honestly be pretty happy and switch to Prusaslicer as my standard with just that change alone, the rest of what I would like to see are mostly just adding more control and quality of life features. Solid infill specific pattern and encroachment settings as well as chamber temp would also be relatively easy and more important. Most of the rest are probably too much of a change or too complex to be realistically added, so maybe it would be better to figure out how to make a fork and try them myself (which is unlikely to happen)

I apologize if this isn't the place or way to do this, but I figure there might be a small chance it could be useful to outline exactly what I personally would like to see in Prusaslicer and where I think it is limited. It turned out extremely long though.

For context: I have primarily been using Superslicer for my Voron because it has more of the features I want, although I've been trying to decide if it's worth switching to the 2.6 alpha because it also has a lot of really interesting features and I've been using it for my Prusa Mini and Ender 3 v2. I operate a print farm at work consisting of 6 Prusa i3s (one of which has an MMU) which we use Prusaslicer 2.5 for, a Markforged Mark Two which obviously uses Eiger, and some custom machines which we also normally use Prusaslicer for as well. I started with Cura and play with it occasionally, but only know it enough to help people with it a bit. As you'll see, most of the the features I would like are from Superslicer.

The #1 thing I want and is keeping me from going to Prusaslicer is mouse ears. I absolutely love them and love Superslicer's implementation. I much prefer them over brims as I find that it's often just the corners that are needed and Superslicer's settings allow good tuning on where they end up. Less wasted time and material, but moreover easier to remove and can stay out of areas that are harder to clean up. The only flaw I've noticed in Superslicer's implementation (that I can remember at least) is that it would be nice if you could add more brim to corners instead of only having brim around corners. That way you would end up with a slightly dynamic and more efficient brim, with a smaller brim where it isn't as important and wider at corners and such. An alternative implementation I could see if you could be if you could change brims with modifier meshes such that it could be used to manually create mouse ears with a concentric pattern so it's easier to remove (could also just add the ability to change the solid infill pattern per part so you can add shapes to a similar effect). It would obviously be best to have both implementations, but that could end up being too much work and too many things to go wrong. Bonus points: I think it would be amazing if brim settings could be a material override so they can be automatically added for materials like ABS but removed for PLA so that users won't forget and lose a print.

[For those who haven't seen Superslicer's mouse ears: in the brim settings, there is a checkbox to enable "mouse ears" which also enables you to change the max angle, detection radius, and pattern. When mouse ears are enabled, it acts as an override and will make a brim with the same settings as set with the normal options, but only around where it sees a change in angle measured within a given radius (not instantaneous change in angle but how much an angle changes within a given area).]

The main additional features that Superslicer has that Prusaslicer doesn't are sparse internal solid infill (additional thin supporting layer to help support top layers and reduce how much infill is needed for a consistent and solid surface) and of course some at least basic calibration tools. I'm sure calibration tools are a common request, but here are my two cents anyway. At a minimum, I would love to see Prusaslicer have first layer calibration (so it can be automatically sized to the bed), temperature calibration, retraction, and of course flow. I would love to see ironing, bridging, overhang, hole, and general dimensional accuracy calibration as well. It would be nice if max flow calibration was also built in, ideally CNC kitchen's tool in addition to a test pattern that doesn't require a milligram scale. It's a stretch, but it would also be nice if there were tools to easily tune things like encroachment, line spacing, and other advanced features, but that's probably a bit much.

Other than that and things I imagine are already being worked on or have been talked about, the main things I would like are in the theme of adding control and ways to do things. I imagine most of these wouldn't be desired features since most are things that only the people who are really pushing their machines would use and so might just add bloat for most users, but nonetheless these are some of the main things I've noticed or come up with (gets more advanced and I imagine less likely to be done as the list goes on):

Sorry for the huge wall of text. I just wanted to get my ideas out there adequately enough for someone more skilled to at least consider them. I definitely don't expect many (or likely any) of this to be implemented, but let me know if there is anything I can do to clarify anything or correct mistakes.

Thank you for coming to my ted talk

LiterallyKey commented 1 year ago

I realized that I titled this as being a few small changes, but a lot are fairly big...

Tupson444 commented 1 year ago

I'm definitely interested in "Dynamic flow compensation" as it would be easier than my current workaround – I use Gcode substitutions, for example if infill is printed at higher volumetric flow than perimeters:

replace: ;TYPE:Perimeter

with: ;TYPE:Perimeter\nM221 S100 ; set flow to 100%

and

replace: ;TYPE:Solid infill

with: ;TYPE:Solid infill\nM221 S110 ; set flow to 110%

etc.

Bumblebiber commented 1 year ago

For improved mouse ears you can create yourself some "table tennis rackets" easily, save them as .3mf and add them to your model.

image image image image

image

Then just copy them and place them where ever needed.

image

Then mark them all and hit 'Merge'(important!)

image

image

You can also save 4 of them in your .3mf file so you can add them quicker to rectangular objects in the future.

image

Bumblebiber commented 1 year ago

I'm definitely interested in "Dynamic flow compensation" as it would be easier than my current workaround – I use Gcode substitutions, for example if infill is printed at higher volumetric flow than perimeters:

replace: ;TYPE:Perimeter with: ;TYPE:Perimeter\nM221 S100 ; set flow to 100%

and

replace: ;TYPE:Solid infill with: ;TYPE:Solid infill\nM221 S110 ; set flow to 110%

etc.

This is the way! Also great for fan control (e.g. turn it on for outer perimeters only).

LiterallyKey commented 1 year ago

I use Gcode substitutions, for example if infill is printed at higher volumetric flow than perimeters:

That's a really cool idea, I'm definitely going to play around with that.

LiterallyKey commented 1 year ago

For improved mouse ears you can create yourself some "table tennis rackets" easily, save them as .3mf and add them to your model.

Yeah, but the problem is that they aren't concentric and instead are directly attatched and so harder to use without drawbacks. Having mouse ears as part of the brim generation allows it to be concentric and also have a seperatipn gap so you can use them with minimal artifacts on the finished part. Those also don't wrap around any outcroppings like Superslicer's do. Definitely better than nothing, but still not great IMO

Bumblebiber commented 1 year ago

For improved mouse ears you can create yourself some "table tennis rackets" easily, save them as .3mf and add them to your model.

Yeah, but the problem is that they aren't concentric and instead are directly attatched and so harder to use without drawbacks. Having mouse ears as part of the brim generation allows it to be concentric and also have a seperatipn gap so you can use them with minimal artifacts on the finished part. Those also don't wrap around any outcroppings like Superslicer's do. Definitely better than nothing, but still not great IMO

You can add the concentric bottom infill feature as well

image

LiterallyKey commented 1 year ago

You can add the concentric bottom infill feature as well

Oh really? you can do that for just those sections and not the whole part? I guess I need to look closer and play with it more. I'm guessing saving them as 3mf instead of just adding a cylinder might help.

Bumblebiber commented 1 year ago

You can add the concentric bottom infill feature as well

Oh really? you can do that for just those sections and not the whole part? I guess I need to look closer and play with it more. I'm guessing saving them as 3mf instead of just adding a cylinder might help.

Rightclick the object -> Add settings -> Infill

Tick "Bottom fill pattern" (first list entry). Then you can change it to what ever you want on the right side.

By the way, here's the video where I got the idea from:

https://www.youtube.com/watch?v=MCcFMDv_4eo

neilmendoza commented 1 year ago

Big +1 to this. Automatic mouse/brim ears are the big missing time saving feature in PrusaSlicer that makes me revert back to SuperSlicer.

TLDR: I love mouse ears and is the https://github.com/prusa3d/PrusaSlicer/issues/1 reason why I primarily prefer Superslicer over Prusaslicer.

Snuff1eupagus commented 7 months ago

Clearly you have completely missed this ability, maybe you should watch this video.

https://www.youtube.com/watch?v=dhsbMmosbLU&t=4s

Enjoy

m10d commented 3 days ago

There are multiple totally separate issues in this post. OP should close and re-open individual issues, that's the way issue tracking software works. This issue seems to have focused mostly on bunny ears which means it would be fine to edit the title & content to just bunny ears, moving any small discussion of the other requests to new issues as necessary.