diff --git a/include/common/bspfile.hh b/include/common/bspfile.hh index 69cc1d4f..34a2dcb1 100644 --- a/include/common/bspfile.hh +++ b/include/common/bspfile.hh @@ -351,8 +351,8 @@ struct fmt::formatter return format_to(ctx.out(), "{}:{}", ident, v.version.value()); } - // Q1-esque BSPs are printed as, ex, 29 - return format_to(ctx.out(), "{}", v.ident); + // Q1-esque BSPs are printed as, ex, bsp29 + return format_to(ctx.out(), "{}", v.short_name); } }; diff --git a/include/qbsp/portals.hh b/include/qbsp/portals.hh index e2928bbc..aa918c2c 100644 --- a/include/qbsp/portals.hh +++ b/include/qbsp/portals.hh @@ -42,5 +42,5 @@ struct tree_t contentflags_t ClusterContents(const node_t *node); void MakeTreePortals(tree_t *tree); -void FreeAllPortals(node_t *node); +void FreeTreePortals_r(node_t *node); void WritePortalFile(tree_t *tree); diff --git a/qbsp/portals.cc b/qbsp/portals.cc index 9604299f..f3ab1bc9 100644 --- a/qbsp/portals.cc +++ b/qbsp/portals.cc @@ -620,7 +620,7 @@ void MakeTreePortals(tree_t *tree) state.iNodesDone = 0; - FreeAllPortals(tree->headnode); + FreeTreePortals_r(tree->headnode); AssertNoPortals(tree->headnode); MakeHeadnodePortals(tree); @@ -640,10 +640,11 @@ void WritePortalFile(tree_t *tree) state.iNodesDone = 0; - FreeAllPortals(tree->headnode); + FreeTreePortals_r(tree->headnode); AssertNoPortals(tree->headnode); MakeHeadnodePortals(tree); + CutNodePortals_r(tree->headnode, &state); /* save portal file for vis tracing */ @@ -656,17 +657,17 @@ void WritePortalFile(tree_t *tree) /* ================== -FreeAllPortals +FreeTreePortals_r ================== */ -void FreeAllPortals(node_t *node) +void FreeTreePortals_r(node_t *node) { portal_t *p, *nextp; if (node->planenum != PLANENUM_LEAF) { - FreeAllPortals(node->children[0]); - FreeAllPortals(node->children[1]); + FreeTreePortals_r(node->children[0]); + FreeTreePortals_r(node->children[1]); } for (p = node->portals; p; p = nextp) { diff --git a/qbsp/qbsp.cc b/qbsp/qbsp.cc index 8506fc07..a95f7d0b 100644 --- a/qbsp/qbsp.cc +++ b/qbsp/qbsp.cc @@ -895,7 +895,7 @@ static void ProcessEntity(mapentity_t *entity, const int hullnum) tree = BrushBSP(entity, false); } - FreeAllPortals(tree->headnode); + FreeTreePortals_r(tree->headnode); PruneNodes(tree->headnode); diff --git a/qbsp/surfaces.cc b/qbsp/surfaces.cc index a6e9554b..b20db449 100644 --- a/qbsp/surfaces.cc +++ b/qbsp/surfaces.cc @@ -157,7 +157,7 @@ std::list SubdivideFace(face_t *f) static void FreeNode(node_t *node) { - FreeAllPortals(node); + FreeTreePortals_r(node); for (face_t *f : node->facelist) { delete f; }