I noticed that solids with multiple solid operations in their representation using the SkipCSGUnion flag were only drawing their first solid. This was due to an optimization earlier applied to reuse vertices. Unfortunately, for similar solids, the tag property of each CSG vertex was not unique, and vertices were being reused that should not have been. For a solid operation with all solids having the same number of vertices and faces, this caused an overwrite of solids.
I noticed that solids with multiple solid operations in their representation using the
SkipCSGUnion
flag were only drawing their first solid. This was due to an optimization earlier applied to reuse vertices. Unfortunately, for similar solids, thetag
property of each CSG vertex was not unique, and vertices were being reused that should not have been. For a solid operation with all solids having the same number of vertices and faces, this caused an overwrite of solids.