Page MenuHome

Boolean Modifier "Exact" solver does not apply target object material to created faces
Closed, ResolvedPublic

Description

System Information
Operating system: MacOS 10.13.6
Graphics card: NVidia GT 750M and Intel Iris Pro 1536 MB

Blender Version
Broken: 2.93.0 alpha (blender-2.93.0-8618c4159c7b-macOS)
Worked: 2.92.0 stable

Short description of error

when using Difference or intersection, a boolean modifier operation creates new faces from the intersecting geometry. Those faces should get assigned the same material as the target boolean object chosen in the modifier. This is not happening when the Solver is "Exact".

Exact steps for others to reproduce the error

  1. set the view port to "Material Preview" mode to be able to see the colors
  2. create a cube and sphere objects with the sphere intersecting the cube
  3. create a new basic diffuse material for the cube and one for the sphere with a different diffuse color
  4. add the sphere material to the cube as second slot
  5. add a Boolean modifier using the Difference or Intersection method to the cube and select the sphere as target Object

Event Timeline

Bruno (brunochartier) updated the task description. (Show Details)
Bruno (brunochartier) updated the task description. (Show Details)
Falk David (filedescriptor) changed the task status from Needs Triage to Confirmed.Mar 10 2021, 10:56 AM

I can reproduce this on the latest 2.93.0 Alpha, branch: master, commit date: 2021-03-10 04:47, hash: rB70e73974b593.

I was trying to reproduce the behavior of Fast, but it seems I misunderstood that behavior. Some experiments seemed to show that Fast just used the same slot # in the final result that was used for the material of the faces on the source (cutter) object, so that's what I did (if you add two more slots of materials to the icosphere and put the magenta material in the 3rd slot, which corresponds to where that material is in the cube, then it works). Also, if the target doesn't already have the source material somewhere in one of its slots, Fast doesn't copy the material over to the target. This seems kind of broken too, but I guess should, for now, just try to emulate exactly what the Fast mode does, which seems to be: look up the source material in the targets material slots: if found, use that slot #; if not found, just use the same slot #.

Thanks Howard and Team!