Why is the slicer adding external walls to my print?

Hi all,

I’m trying to print this model: Wall Chess (Quoridor) - Free 3D Print Model - MakerWorld
I’m using two colors for the brick wall (a dark color for the “mortar” and a light/marble color for the bricks). If I print the walls vertically, then they slice correctly. If I lay them on their face, then the slicer introduces additional external walls “behind” the bricks, which causes the color to bleed through lighter filaments.

Here’s what I would like to achieve:

Top layer looks good:

A few layers down has the 2nd row of bricks look like squares:

Line Type shows these to be external walls:

This leads to the mortar bleeding through:

If I rotate the wall vertically, then there is no such artifact:

Unfortunately, this would cause the model to print significantly slower due to the increased number of layers and the need for a filament change for each layer.

Strangely, if I import the STL file in, then I get a completely different error. This time, it’s related to the coloring. The edges don’t actually get printed in the correct color. This is a slice of a middle layer with 100% infill:


The right is the same instance as above. The left is showing that the “mortar” is not making its way to the edges.

And yes, I’ve checked that the coloring is identical between the two objects:

Anyone have any ideas for how to debug this further? I’d like to understand why these extra external walls are being added three layers down. Is there a setting somewhere that is triggering this behavior? Any help would be most appreciated. Thanks in advance!

If you look under the “Strength” tab there is a setting to control how deep the colors go from the top and another setting for the bottom. I think the default is 3. Change the top one and see if that fixes it.

A different approach would be with filament choice. Some of the Bambu colors are translucent and will allow colors behind them to show through. Some are much more opaque (the grays and tans can be pretty opaque) and would better block colors showing through.

Hopefully McGee’s advice fixes you up, but if not, using opaque filament for the bricks might hide the mortar color.

@PrinterMcgee Thanks for responding!

This is what I currently have set:

If I crank the top paint penetration layers to 10, I don’t seem to get anything different. This is still layer 18/20:

Changing it to 0 does something, but it’s not what I’m looking for. It actually removes the lines I want and keeps the “bad” ones.

Layer 20/20:

Layer 18/20: (The blue circled lines shouldn’t be there, and the red lines should be present, but aren’t)

Changing it to 1 produces this. Layer 18/20:

@MZip I hear you. If we took it to the extreme and inverted the colors (black bricks and marble mortar), I doubt I would have posted anything. In this case, I’m mostly just trying to learn more about 3D printing, modeling, and the slicer. If I want my slicer to produce a “proper” brick pattern without extraneous walls 3 layers from the outsides, is this possible? I’m mostly trying to understand where these extra walls are coming from and how I can debug/investigate this.

FWIW, I’m using ELEGOO Marble PLA (Amazon.com: ELEGOO PLA Filament 1.75mm Marble 1KG, 3D Printer Filament Dimensional Accuracy +/- 0.02mm, 1kg Cardboard Spool(2.2lbs) 3D Printing Filament Fits for Most FDM 3D Printers : Industrial & Scientific).

Try changing the “Top Shell Layers” to the same number you change “Top Paint Penetration Layers” to and see how that looks.

This seems to impact the height at which the internal solid infill transitions to sparse infill, but it doesn’t seem to change the location of the outer walls that are being introduced.

NB: I set the Top shell thickness to 0 for all of these so that the “Top shell layers” would always “win”:

Top shell layers: 0

Layer 20/20:

Layer 18/20:

The 1st and 3rd rows of bricks use sparse infill:

Top shell layers: 1

Layer 20/20:

Layer 18/20:

The 1st and 3rd rows of bricks use sparse infill (same as for top shell layers of 0):

Top shell layers: 5

Layer 20/20:

Layer 18/20:

All bricks now use internal solid infill:

Question… what if you right click the model and change the whole thing to the white marble and then use the paint bucket tool (with edge detection) to paint the mortar black?

1 Like

It’s absolutely possible but means a redesign. I use Fusion and in that program it would be easy to extrude the bricks and the mortar as two separate pieces that get treated as a single model in Studio. In Studio you can assign different colors to the parts and print them together without having to try to improvise.

Fusion is well known for its steep learning curve, though. There are other programs that should let you do the same thing that are easier to come up to speed with. I don’t know them to name them all though.

If you look for the Bambu tutorial on extruding designs for lightboxes in Fusion it shows you the basic steps if you’re interested in going further.

Just saw McGee’s possible workaround and he might have solved it. Bet his idea works fine.

I had wondered the same thing. It’s the same as the “import STL from scratch” case. The external walls disappear from the second row of bricks, which is good! But then the internal “mortar” walls disappear, so then you don’t see the black mortar extend to the sides.

Paint

Layer 18/20
This looks good!

Layer 15/20
The black walls are now only internal:

Layer 10/20

NB: These all had 100% concentric sparse infill density

I tried messing with the top shell layers and paint penetration layers with this approach too, but the mortar stops connecting to the edges after layer 18.

I’m also not sure why the left bottom brick has some vertical mortar reaching all the way to the bottom edge only on some layers:
20-14: Present


13-11: Absent

10-8: Present

7-6: Absent

5-1: Present

Paint tool with edge detection does not paint all the way through the wall, so the slicer does it best and get these results.

The model has to have separate parts that can be assigned a material.

I have reversed the stl into a solid and made it into parts. You can see in the attached 3mf file, that it then works.

Bricks.3mf (45.2 KB)

Nice! Thank you so much @user_3110569737 !

I have two follow up questions for you:

  1. Was I just “lucky” that the vertical wall sliced everything correctly? I was assuming that this meant that the painting and geometry was correct (or at least feasible to slice how I wanted).

  2. Which tool did you use to break the STL into parts? Is there an easy way to do it in BambuStudio or OrcaSlicer? Or did you need to break out MeshMixer/onShape/Fusion360?

using the default .2 profile, making the model white and painting the mortar black it works for me?



That’s what I thought too! But you’ll notice that your slice has the extra mortar lines on the second row from the top. These are what are bleeding through:

The paint tool is not perfect, therefore the only safe way is to model parts with different colours.

Take a cube and paint white on the side and yellow on the top.

Slice it and see how the white goes into the infill. That is not what one is expecting.

I use FreeCAD to make stl into step format and then the free version of Fusion360 to model in. I think you in the paid version of Fusion360 can do both.