qbsp: csg: mirror faces, even for solid, to help leaf content assignment

Mark them as skip so they don't get saved.

This fixes csg_fail.map (in combination with -epsilon 0.1)
This commit is contained in:
Eric Wasylishen 2017-07-24 23:12:37 -06:00
parent 38a7d6a944
commit a910dd861a
1 changed files with 3 additions and 2 deletions

View File

@ -354,7 +354,8 @@ SaveFacesToPlaneList(face_t *facelist, bool mirror, std::map<int, face_t *> &pla
if (face->contents[1] == CONTENTS_DETAIL
|| face->contents[1] == CONTENTS_DETAIL_ILLUSIONARY
|| face->contents[1] == CONTENTS_DETAIL_FENCE
|| (face->cflags[1] & CFLAGS_WAS_ILLUSIONARY)) {
|| (face->cflags[1] & CFLAGS_WAS_ILLUSIONARY)
|| face->contents[1] == CONTENTS_SOLID) {
newface->texinfo = MakeSkipTexinfo();
}
@ -653,7 +654,7 @@ CSGFaces(const mapentity_t *entity)
* All of the faces left on the outside list are real surface faces
* If the brush is non-solid, mirror faces for the inside view
*/
mirror = (brush->contents != CONTENTS_SOLID);
mirror = true;//brush->contents != CONTENTS_SOLID);
SaveFacesToPlaneList(outside, mirror, planefaces);
progress++;