qbsp: fix noclipfaces tests

This commit is contained in:
Eric Wasylishen 2022-06-21 00:39:07 -06:00
parent e39c8f9cf6
commit 84e007b7ce
2 changed files with 12 additions and 1 deletions

View File

@ -69,7 +69,7 @@ static face_t *TryMerge(face_t *f1, face_t *f2)
bool keep1, keep2;
if (!f1->w.size() || !f2->w.size() || f1->planeside != f2->planeside || f1->texinfo != f2->texinfo ||
/*!f1->contents[0].equals(options.target_game, f2->contents[0]) ||*/ !f1->contents[1].equals(options.target_game, f2->contents[1]) ||
/*!f1->contents[0].equals(options.target_game, f2->contents[0]) || !f1->contents[1].equals(options.target_game, f2->contents[1]) || */
f1->lmshift[0] != f2->lmshift[0] || f1->lmshift[1] != f2->lmshift[1])
return NULL;

View File

@ -765,6 +765,17 @@ static face_t *FaceFromPortal(portal_t *p, int pside)
return nullptr;
}
if (!p->nodes[pside]->contents.is_empty(options.target_game)) {
bool our_contents_mirrorinside = options.target_game->contents_are_mirrored(p->nodes[pside]->contents);
if (!our_contents_mirrorinside) {
if (side->planeside != pside) {
return nullptr;
}
}
}
if (pside)
{
f->w = p->winding->flip();