Skip to content

CSGPolygon3D union has inconsistent behavior with coplanar faces #106620

Open
@OffsetMOSFET

Description

@OffsetMOSFET

Tested versions

4.4.1
4.5 dev 4

System information

Ubuntu 22.04.5 LTS

Issue description

CSGPolygons do not consistently join when sides are coplanar.

Steps to reproduce

In the MRP, I have constructed four CSGs

  • Bottom of large CSGPolygon connecting to tops of smaller CSGPolygons (Bottom-Top)
  • Side of large CSGPolygon connecting to sides of smaller CSGPolygons (Side-Side)
  • Buttom of large CSGPolygon connecting to sides of smaller CSGPolygons (Bottom-Side)
  • Side of large CSGPolygon connecting to tops of smaller CSGPolygons (Side-Top)

The CSGs have flipped faces for easy viewing, but the behavior is the same without flipped faces. You can see this by using wireframe camera mode and unflipping the faces, that the resulting mesh isn't correct.

In the cases of Bottom-Top and Side-Top, the example is able to join the CSGs correctly.

In the case of Bottom-Side, the large CSG does not join with the smaller CSGs, which do join with each other.

In the case of Side-Side, the small CSGs that are level or lower (y-axis) with the large CSG do not join with the large CSG. If you increase the depth of one of the unjoined CSGs, you can see even glitchier behavior where only sections of the small CSGs will join.

Minimal reproduction project (MRP)

example_csg.zip

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions