From 7cf1107f836db11e1d3f2febc0d80946de9fc15b Mon Sep 17 00:00:00 2001 From: Eric Wasylishen Date: Wed, 6 Oct 2021 17:09:52 -0600 Subject: [PATCH 1/4] testmaps: commit .json of tiny test maps --- .gitignore | 4 + testmaps/automatated_tests.sh | 22 +- .../qbsp_func_detail.bsp.json | 4594 +++++++++++++++++ ...unc_detail_illusionary_plus_water.bsp.json | 2785 ++++++++++ 4 files changed, 7404 insertions(+), 1 deletion(-) create mode 100644 testmaps/reference_bsp_json/qbsp_func_detail.bsp.json create mode 100644 testmaps/reference_bsp_json/qbsp_func_detail_illusionary_plus_water.bsp.json diff --git a/.gitignore b/.gitignore index a3a177f9..00959f5f 100644 --- a/.gitignore +++ b/.gitignore @@ -9,7 +9,11 @@ testmaps/*.bsp testmaps/*.log testmaps/*.prt testmaps/*.vis +testmaps/*.texinfo +testmaps/*.bsp.json testmaps/quake_map_source/*.bsp testmaps/quake_map_source/*.log testmaps/quake_map_source/*.prt testmaps/quake_map_source/*.vis +testmaps/quake_map_source/*.texinfo +testmaps/quake_map_source/*.bsp.json diff --git a/testmaps/automatated_tests.sh b/testmaps/automatated_tests.sh index 764c868e..3250d7bd 100755 --- a/testmaps/automatated_tests.sh +++ b/testmaps/automatated_tests.sh @@ -6,7 +6,7 @@ # If --update-hashes is given, updates the expected hash files. # Otherwise tests the generated .bsp's match the expected hashes. # -# qbsp, vis, light need to be in PATH before running. +# qbsp, vis, light, bspinfo need to be in PATH before running. # # Returns exit status 1 if any tests failed, otherwise 0 @@ -50,10 +50,29 @@ qbspfeatures.bsp" HASH_CHECK_PRTS=${HASH_CHECK_BSPS//.bsp/.prt} +# for tiny test maps, we'll commit the .json export of the .bsp's +# directly to the git repo, so we can print a diff +COMMIT_JSON_MAPS="qbsp_func_detail.bsp \ +qbsp_func_detail_illusionary_plus_water.bsp" + # smaller test maps for specific features/combinations qbsp -noverbose qbsp_func_detail.map || exit 1 qbsp -noverbose qbsp_func_detail_illusionary_plus_water.bsp || exit 1 +# check .json diff of COMMIT_JSON_MAPS +for bsp in ${COMMIT_JSON_MAPS}; do + bspinfo ${bsp} || exit 1 + + if [[ $UPDATE_HASHES -ne 0 ]]; then + mkdir reference_bsp_json + cp ${bsp}.json reference_bsp_json/${bsp}.json + else + echo "Diff of reference_bsp_json/${bsp}.json and ${bsp}.json:" + diff -U3 reference_bsp_json/${bsp}.json ${bsp}.json || exit 1 + fi +done + +# larger test maps (E1M1) qbsp -noverbose quake_map_source/E1M1.map e1m1-bsp29.bsp || exit 1 qbsp -noverbose -bsp2 quake_map_source/E1M1.map e1m1-bsp2.bsp || exit 1 qbsp -noverbose -2psb quake_map_source/E1M1.map e1m1-2psb.bsp || exit 1 @@ -73,6 +92,7 @@ qbsp -onlyents E1M1-edited-ents.map e1m1-bsp29-onlyents.bsp || exit 1 qbsp -noverbose qbspfeatures.map || exit 1 +# check (or regenerate) hashes of .bsp's if [[ $UPDATE_HASHES -ne 0 ]]; then sha256sum ${HASH_CHECK_BSPS} ${HASH_CHECK_PRTS} > qbsp.sha256sum || exit 1 else diff --git a/testmaps/reference_bsp_json/qbsp_func_detail.bsp.json b/testmaps/reference_bsp_json/qbsp_func_detail.bsp.json new file mode 100644 index 00000000..770ed005 --- /dev/null +++ b/testmaps/reference_bsp_json/qbsp_func_detail.bsp.json @@ -0,0 +1,4594 @@ +{ + "clipnodes": [ + { + "children": [ + 1, + 27 + ], + "planenum": 27 + }, + { + "children": [ + 2, + 17 + ], + "planenum": 25 + }, + { + "children": [ + -2, + 3 + ], + "planenum": 22 + }, + { + "children": [ + 4, + 6 + ], + "planenum": 21 + }, + { + "children": [ + -2, + 5 + ], + "planenum": 16 + }, + { + "children": [ + -2, + -1 + ], + "planenum": 15 + }, + { + "children": [ + 7, + 10 + ], + "planenum": 6 + }, + { + "children": [ + 8, + -2 + ], + "planenum": 18 + }, + { + "children": [ + -2, + 9 + ], + "planenum": 16 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 17 + }, + { + "children": [ + 11, + 13 + ], + "planenum": 20 + }, + { + "children": [ + -2, + 12 + ], + "planenum": 16 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 17 + }, + { + "children": [ + 14, + 15 + ], + "planenum": 18 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 19 + }, + { + "children": [ + -2, + 16 + ], + "planenum": 13 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 19 + }, + { + "children": [ + -2, + 18 + ], + "planenum": 22 + }, + { + "children": [ + 19, + 21 + ], + "planenum": 19 + }, + { + "children": [ + -2, + 20 + ], + "planenum": 15 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 23 + }, + { + "children": [ + 22, + 24 + ], + "planenum": 6 + }, + { + "children": [ + 23, + -2 + ], + "planenum": 23 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 17 + }, + { + "children": [ + -2, + 25 + ], + "planenum": 24 + }, + { + "children": [ + 26, + -2 + ], + "planenum": 23 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 17 + }, + { + "children": [ + -2, + 28 + ], + "planenum": 16 + }, + { + "children": [ + 29, + -2 + ], + "planenum": 23 + }, + { + "children": [ + 30, + -2 + ], + "planenum": 26 + }, + { + "children": [ + 31, + -2 + ], + "planenum": 17 + }, + { + "children": [ + -2, + -1 + ], + "planenum": 15 + }, + { + "children": [ + 33, + 57 + ], + "planenum": 39 + }, + { + "children": [ + 34, + 47 + ], + "planenum": 37 + }, + { + "children": [ + -2, + 35 + ], + "planenum": 34 + }, + { + "children": [ + -2, + 36 + ], + "planenum": 33 + }, + { + "children": [ + 37, + 38 + ], + "planenum": 21 + }, + { + "children": [ + -2, + -1 + ], + "planenum": 28 + }, + { + "children": [ + 39, + 41 + ], + "planenum": 32 + }, + { + "children": [ + 40, + -2 + ], + "planenum": 29 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 17 + }, + { + "children": [ + 42, + 43 + ], + "planenum": 31 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 17 + }, + { + "children": [ + 44, + 45 + ], + "planenum": 29 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 19 + }, + { + "children": [ + -2, + 46 + ], + "planenum": 30 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 19 + }, + { + "children": [ + -2, + 48 + ], + "planenum": 34 + }, + { + "children": [ + 49, + 51 + ], + "planenum": 19 + }, + { + "children": [ + -2, + 50 + ], + "planenum": 28 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 35 + }, + { + "children": [ + 52, + 54 + ], + "planenum": 32 + }, + { + "children": [ + 53, + -2 + ], + "planenum": 35 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 17 + }, + { + "children": [ + -2, + 55 + ], + "planenum": 36 + }, + { + "children": [ + 56, + -2 + ], + "planenum": 35 + }, + { + "children": [ + -1, + -2 + ], + "planenum": 17 + }, + { + "children": [ + -2, + 58 + ], + "planenum": 33 + }, + { + "children": [ + 59, + -2 + ], + "planenum": 35 + }, + { + "children": [ + 60, + -2 + ], + "planenum": 38 + }, + { + "children": [ + 61, + -2 + ], + "planenum": 17 + }, + { + "children": [ + -2, + -1 + ], + "planenum": 28 + } + ], + "edges": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 2 + ], + [ + 2, + 3 + ], + [ + 3, + 0 + ], + [ + 4, + 5 + ], + [ + 5, + 6 + ], + [ + 6, + 0 + ], + [ + 3, + 4 + ], + [ + 7, + 8 + ], + [ + 8, + 3 + ], + [ + 2, + 7 + ], + [ + 8, + 9 + ], + [ + 9, + 10 + ], + [ + 10, + 4 + ], + [ + 11, + 12 + ], + [ + 12, + 13 + ], + [ + 13, + 14 + ], + [ + 14, + 15 + ], + [ + 15, + 11 + ], + [ + 14, + 16 + ], + [ + 16, + 17 + ], + [ + 17, + 15 + ], + [ + 18, + 19 + ], + [ + 19, + 20 + ], + [ + 20, + 21 + ], + [ + 21, + 22 + ], + [ + 22, + 18 + ], + [ + 23, + 24 + ], + [ + 24, + 22 + ], + [ + 21, + 13 + ], + [ + 12, + 23 + ], + [ + 7, + 25 + ], + [ + 25, + 26 + ], + [ + 26, + 27 + ], + [ + 27, + 8 + ], + [ + 28, + 29 + ], + [ + 29, + 9 + ], + [ + 27, + 28 + ], + [ + 26, + 30 + ], + [ + 30, + 31 + ], + [ + 31, + 32 + ], + [ + 32, + 27 + ], + [ + 33, + 34 + ], + [ + 34, + 35 + ], + [ + 35, + 36 + ], + [ + 36, + 28 + ], + [ + 32, + 33 + ], + [ + 15, + 32 + ], + [ + 31, + 11 + ], + [ + 17, + 33 + ], + [ + 37, + 38 + ], + [ + 38, + 1 + ], + [ + 0, + 39 + ], + [ + 39, + 37 + ], + [ + 6, + 40 + ], + [ + 40, + 41 + ], + [ + 41, + 39 + ], + [ + 42, + 43 + ], + [ + 43, + 37 + ], + [ + 39, + 44 + ], + [ + 44, + 42 + ], + [ + 41, + 45 + ], + [ + 45, + 46 + ], + [ + 46, + 44 + ], + [ + 24, + 42 + ], + [ + 44, + 18 + ], + [ + 46, + 19 + ], + [ + 47, + 48 + ], + [ + 48, + 13 + ], + [ + 21, + 47 + ], + [ + 23, + 49 + ], + [ + 49, + 43 + ], + [ + 49, + 50 + ], + [ + 50, + 38 + ], + [ + 50, + 2 + ], + [ + 30, + 49 + ], + [ + 25, + 50 + ], + [ + 51, + 52 + ], + [ + 52, + 48 + ], + [ + 47, + 51 + ], + [ + 52, + 16 + ], + [ + 20, + 51 + ], + [ + 45, + 53 + ], + [ + 53, + 51 + ], + [ + 54, + 34 + ], + [ + 52, + 54 + ], + [ + 55, + 56 + ], + [ + 56, + 57 + ], + [ + 57, + 58 + ], + [ + 58, + 59 + ], + [ + 59, + 60 + ], + [ + 60, + 55 + ], + [ + 59, + 5 + ], + [ + 10, + 60 + ], + [ + 36, + 55 + ], + [ + 60, + 29 + ], + [ + 53, + 61 + ], + [ + 61, + 62 + ], + [ + 62, + 63 + ], + [ + 63, + 54 + ], + [ + 63, + 35 + ], + [ + 57, + 61 + ], + [ + 40, + 58 + ], + [ + 62, + 56 + ], + [ + 57, + 64 + ], + [ + 64, + 65 + ], + [ + 65, + 61 + ], + [ + 56, + 66 + ], + [ + 66, + 64 + ], + [ + 62, + 67 + ], + [ + 67, + 66 + ], + [ + 65, + 67 + ] + ], + "entdata": "{\n\"_tb_def\" \"builtin:Quoth2.fgd\"\n\"_wateralpha\" \"0.5\"\n\"wad\" \"deprecated/free_wad.wad;deprecated/fence.wad;deprecated/origin.wad;deprecated/hintskip.wad\"\n\"classname\" \"worldspawn\"\n\"mapversion\" \"220\"\n}\n{\n\"light\" \"3000\"\n\"origin\" \"72 -136 168\"\n\"classname\" \"light\"\n}\n{\n\"origin\" \"-88 -64 120\"\n\"classname\" \"info_player_start\"\n}\n\u0000", + "faces": [ + { + "firstedge": 0, + "lightofs": -1, + "numedges": 4, + "planenum": 0, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + 288.0, + -432.0, + 128.0 + ], + [ + 288.0, + -432.0, + 352.0 + ], + [ + 64.0, + -432.0, + 352.0 + ], + [ + 64.0, + -432.0, + 128.0 + ] + ] + }, + { + "firstedge": 4, + "lightofs": -1, + "numedges": 5, + "planenum": 0, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + 64.0, + -432.0, + 96.0 + ], + [ + 96.0, + -432.0, + 96.0 + ], + [ + 288.0, + -432.0, + 96.0 + ], + [ + 288.0, + -432.0, + 128.0 + ], + [ + 64.0, + -432.0, + 128.0 + ] + ] + }, + { + "firstedge": 9, + "lightofs": -1, + "numedges": 4, + "planenum": 0, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + -160.0, + -432.0, + 352.0 + ], + [ + -160.0, + -432.0, + 128.0 + ], + [ + 64.0, + -432.0, + 128.0 + ], + [ + 64.0, + -432.0, + 352.0 + ] + ] + }, + { + "firstedge": 13, + "lightofs": -1, + "numedges": 5, + "planenum": 0, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + -160.0, + -432.0, + 128.0 + ], + [ + -160.0, + -432.0, + 96.0 + ], + [ + -128.0, + -432.0, + 96.0 + ], + [ + 64.0, + -432.0, + 96.0 + ], + [ + 64.0, + -432.0, + 128.0 + ] + ] + }, + { + "firstedge": 18, + "lightofs": -1, + "numedges": 5, + "planenum": 1, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + -160.0, + 176.0, + 352.0 + ], + [ + 56.0, + 176.0, + 352.0 + ], + [ + 56.0, + 176.0, + 168.0 + ], + [ + 56.0, + 176.0, + 128.0 + ], + [ + -160.0, + 176.0, + 128.0 + ] + ] + }, + { + "firstedge": 23, + "lightofs": -1, + "numedges": 4, + "planenum": 1, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + 56.0, + 176.0, + 128.0 + ], + [ + 56.0, + 176.0, + 96.0 + ], + [ + -160.0, + 176.0, + 96.0 + ], + [ + -160.0, + 176.0, + 128.0 + ] + ] + }, + { + "firstedge": 27, + "lightofs": -1, + "numedges": 5, + "planenum": 1, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + 288.0, + 176.0, + 128.0 + ], + [ + 288.0, + 176.0, + 96.0 + ], + [ + 72.0, + 176.0, + 96.0 + ], + [ + 72.0, + 176.0, + 168.0 + ], + [ + 288.0, + 176.0, + 168.0 + ] + ] + }, + { + "firstedge": 32, + "lightofs": -1, + "numedges": 6, + "planenum": 1, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + 64.0, + 176.0, + 352.0 + ], + [ + 288.0, + 176.0, + 352.0 + ], + [ + 288.0, + 176.0, + 168.0 + ], + [ + 72.0, + 176.0, + 168.0 + ], + [ + 56.0, + 176.0, + 168.0 + ], + [ + 56.0, + 176.0, + 352.0 + ] + ] + }, + { + "firstedge": 38, + "lightofs": -1, + "numedges": 5, + "planenum": 2, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + -160.0, + -432.0, + 128.0 + ], + [ + -160.0, + -432.0, + 352.0 + ], + [ + -160.0, + -272.0, + 352.0 + ], + [ + -160.0, + -208.0, + 352.0 + ], + [ + -160.0, + -208.0, + 128.0 + ] + ] + }, + { + "firstedge": 43, + "lightofs": -1, + "numedges": 5, + "planenum": 2, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + -160.0, + -208.0, + 96.0 + ], + [ + -160.0, + -312.0, + 96.0 + ], + [ + -160.0, + -432.0, + 96.0 + ], + [ + -160.0, + -432.0, + 128.0 + ], + [ + -160.0, + -208.0, + 128.0 + ] + ] + }, + { + "firstedge": 48, + "lightofs": -1, + "numedges": 5, + "planenum": 2, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + -160.0, + -208.0, + 128.0 + ], + [ + -160.0, + -208.0, + 352.0 + ], + [ + -160.0, + -48.0, + 352.0 + ], + [ + -160.0, + 16.0, + 352.0 + ], + [ + -160.0, + 16.0, + 128.0 + ] + ] + }, + { + "firstedge": 53, + "lightofs": -1, + "numedges": 7, + "planenum": 2, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + -160.0, + 16.0, + 96.0 + ], + [ + -160.0, + -8.0, + 96.0 + ], + [ + -160.0, + -24.0, + 96.0 + ], + [ + -160.0, + -88.0, + 96.0 + ], + [ + -160.0, + -208.0, + 96.0 + ], + [ + -160.0, + -208.0, + 128.0 + ], + [ + -160.0, + 16.0, + 128.0 + ] + ] + }, + { + "firstedge": 60, + "lightofs": -1, + "numedges": 4, + "planenum": 2, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + -160.0, + 176.0, + 352.0 + ], + [ + -160.0, + 176.0, + 128.0 + ], + [ + -160.0, + 16.0, + 128.0 + ], + [ + -160.0, + 16.0, + 352.0 + ] + ] + }, + { + "firstedge": 64, + "lightofs": -1, + "numedges": 4, + "planenum": 2, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + -160.0, + 176.0, + 128.0 + ], + [ + -160.0, + 176.0, + 96.0 + ], + [ + -160.0, + 16.0, + 96.0 + ], + [ + -160.0, + 16.0, + 128.0 + ] + ] + }, + { + "firstedge": 68, + "lightofs": -1, + "numedges": 5, + "planenum": 3, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + 288.0, + -208.0, + 352.0 + ], + [ + 288.0, + -272.0, + 352.0 + ], + [ + 288.0, + -432.0, + 352.0 + ], + [ + 288.0, + -432.0, + 128.0 + ], + [ + 288.0, + -208.0, + 128.0 + ] + ] + }, + { + "firstedge": 73, + "lightofs": -1, + "numedges": 5, + "planenum": 3, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + 288.0, + -432.0, + 128.0 + ], + [ + 288.0, + -432.0, + 96.0 + ], + [ + 288.0, + -232.0, + 96.0 + ], + [ + 288.0, + -208.0, + 96.0 + ], + [ + 288.0, + -208.0, + 128.0 + ] + ] + }, + { + "firstedge": 78, + "lightofs": -1, + "numedges": 5, + "planenum": 3, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + 288.0, + 16.0, + 352.0 + ], + [ + 288.0, + -48.0, + 352.0 + ], + [ + 288.0, + -208.0, + 352.0 + ], + [ + 288.0, + -208.0, + 128.0 + ], + [ + 288.0, + 16.0, + 128.0 + ] + ] + }, + { + "firstedge": 83, + "lightofs": -1, + "numedges": 5, + "planenum": 3, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + 288.0, + -208.0, + 128.0 + ], + [ + 288.0, + -208.0, + 96.0 + ], + [ + 288.0, + -8.0, + 96.0 + ], + [ + 288.0, + 16.0, + 96.0 + ], + [ + 288.0, + 16.0, + 128.0 + ] + ] + }, + { + "firstedge": 88, + "lightofs": -1, + "numedges": 5, + "planenum": 3, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + 288.0, + 176.0, + 128.0 + ], + [ + 288.0, + 176.0, + 168.0 + ], + [ + 288.0, + 176.0, + 352.0 + ], + [ + 288.0, + 16.0, + 352.0 + ], + [ + 288.0, + 16.0, + 128.0 + ] + ] + }, + { + "firstedge": 93, + "lightofs": -1, + "numedges": 4, + "planenum": 3, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + 288.0, + 176.0, + 96.0 + ], + [ + 288.0, + 176.0, + 128.0 + ], + [ + 288.0, + 16.0, + 128.0 + ], + [ + 288.0, + 16.0, + 96.0 + ] + ] + }, + { + "firstedge": 97, + "lightofs": -1, + "numedges": 4, + "planenum": 4, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 2, + "vertices": [ + [ + 72.0, + -8.0, + 168.0 + ], + [ + 56.0, + -8.0, + 168.0 + ], + [ + 56.0, + 176.0, + 168.0 + ], + [ + 72.0, + 176.0, + 168.0 + ] + ] + }, + { + "firstedge": 101, + "lightofs": -1, + "numedges": 5, + "planenum": 5, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 3, + "vertices": [ + [ + 288.0, + 16.0, + 352.0 + ], + [ + 288.0, + 176.0, + 352.0 + ], + [ + 64.0, + 176.0, + 352.0 + ], + [ + 64.0, + -48.0, + 352.0 + ], + [ + 288.0, + -48.0, + 352.0 + ] + ] + }, + { + "firstedge": 106, + "lightofs": -1, + "numedges": 5, + "planenum": 5, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 3, + "vertices": [ + [ + 64.0, + -48.0, + 352.0 + ], + [ + 64.0, + -272.0, + 352.0 + ], + [ + 288.0, + -272.0, + 352.0 + ], + [ + 288.0, + -208.0, + 352.0 + ], + [ + 288.0, + -48.0, + 352.0 + ] + ] + }, + { + "firstedge": 111, + "lightofs": -1, + "numedges": 4, + "planenum": 5, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 3, + "vertices": [ + [ + 64.0, + -272.0, + 352.0 + ], + [ + 64.0, + -432.0, + 352.0 + ], + [ + 288.0, + -432.0, + 352.0 + ], + [ + 288.0, + -272.0, + 352.0 + ] + ] + }, + { + "firstedge": 115, + "lightofs": -1, + "numedges": 6, + "planenum": 5, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 3, + "vertices": [ + [ + 64.0, + 176.0, + 352.0 + ], + [ + 56.0, + 176.0, + 352.0 + ], + [ + -160.0, + 176.0, + 352.0 + ], + [ + -160.0, + 16.0, + 352.0 + ], + [ + -160.0, + -48.0, + 352.0 + ], + [ + 64.0, + -48.0, + 352.0 + ] + ] + }, + { + "firstedge": 121, + "lightofs": -1, + "numedges": 5, + "planenum": 5, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 3, + "vertices": [ + [ + -160.0, + -48.0, + 352.0 + ], + [ + -160.0, + -208.0, + 352.0 + ], + [ + -160.0, + -272.0, + 352.0 + ], + [ + 64.0, + -272.0, + 352.0 + ], + [ + 64.0, + -48.0, + 352.0 + ] + ] + }, + { + "firstedge": 126, + "lightofs": -1, + "numedges": 4, + "planenum": 5, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 3, + "vertices": [ + [ + -160.0, + -272.0, + 352.0 + ], + [ + -160.0, + -432.0, + 352.0 + ], + [ + 64.0, + -432.0, + 352.0 + ], + [ + 64.0, + -272.0, + 352.0 + ] + ] + }, + { + "firstedge": 130, + "lightofs": -1, + "numedges": 4, + "planenum": 6, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + 72.0, + -8.0, + 96.0 + ], + [ + 56.0, + -8.0, + 96.0 + ], + [ + 56.0, + -8.0, + 168.0 + ], + [ + 72.0, + -8.0, + 168.0 + ] + ] + }, + { + "firstedge": 134, + "lightofs": -1, + "numedges": 5, + "planenum": 7, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 4, + "vertices": [ + [ + 56.0, + -8.0, + 168.0 + ], + [ + 56.0, + -8.0, + 96.0 + ], + [ + 56.0, + 176.0, + 96.0 + ], + [ + 56.0, + 176.0, + 128.0 + ], + [ + 56.0, + 176.0, + 168.0 + ] + ] + }, + { + "firstedge": 139, + "lightofs": -1, + "numedges": 4, + "planenum": 8, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 5, + "vertices": [ + [ + 72.0, + 176.0, + 96.0 + ], + [ + 72.0, + -8.0, + 96.0 + ], + [ + 72.0, + -8.0, + 168.0 + ], + [ + 72.0, + 176.0, + 168.0 + ] + ] + }, + { + "firstedge": 143, + "lightofs": -1, + "numedges": 6, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + 288.0, + 176.0, + 96.0 + ], + [ + 288.0, + 16.0, + 96.0 + ], + [ + 288.0, + -8.0, + 96.0 + ], + [ + 96.0, + -8.0, + 96.0 + ], + [ + 72.0, + -8.0, + 96.0 + ], + [ + 72.0, + 176.0, + 96.0 + ] + ] + }, + { + "firstedge": 149, + "lightofs": -1, + "numedges": 6, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + -128.0, + -8.0, + 96.0 + ], + [ + -160.0, + -8.0, + 96.0 + ], + [ + -160.0, + 16.0, + 96.0 + ], + [ + -160.0, + 176.0, + 96.0 + ], + [ + 56.0, + 176.0, + 96.0 + ], + [ + 56.0, + -8.0, + 96.0 + ] + ] + }, + { + "firstedge": 155, + "lightofs": -1, + "numedges": 6, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + -128.0, + -88.0, + 96.0 + ], + [ + 32.0, + -88.0, + 96.0 + ], + [ + 96.0, + -88.0, + 96.0 + ], + [ + 96.0, + -232.0, + 96.0 + ], + [ + 96.0, + -312.0, + 96.0 + ], + [ + -128.0, + -312.0, + 96.0 + ] + ] + }, + { + "firstedge": 161, + "lightofs": -1, + "numedges": 5, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + 96.0, + -312.0, + 96.0 + ], + [ + 96.0, + -432.0, + 96.0 + ], + [ + 64.0, + -432.0, + 96.0 + ], + [ + -128.0, + -432.0, + 96.0 + ], + [ + -128.0, + -312.0, + 96.0 + ] + ] + }, + { + "firstedge": 166, + "lightofs": -1, + "numedges": 5, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + -160.0, + -312.0, + 96.0 + ], + [ + -160.0, + -208.0, + 96.0 + ], + [ + -160.0, + -88.0, + 96.0 + ], + [ + -128.0, + -88.0, + 96.0 + ], + [ + -128.0, + -312.0, + 96.0 + ] + ] + }, + { + "firstedge": 171, + "lightofs": -1, + "numedges": 4, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + -160.0, + -432.0, + 96.0 + ], + [ + -160.0, + -312.0, + 96.0 + ], + [ + -128.0, + -312.0, + 96.0 + ], + [ + -128.0, + -432.0, + 96.0 + ] + ] + }, + { + "firstedge": 175, + "lightofs": -1, + "numedges": 7, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + 56.0, + -8.0, + 96.0 + ], + [ + 72.0, + -8.0, + 96.0 + ], + [ + 96.0, + -8.0, + 96.0 + ], + [ + 96.0, + -24.0, + 96.0 + ], + [ + 32.0, + -24.0, + 96.0 + ], + [ + -128.0, + -24.0, + 96.0 + ], + [ + -128.0, + -8.0, + 96.0 + ] + ] + }, + { + "firstedge": 182, + "lightofs": -1, + "numedges": 4, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + -128.0, + -24.0, + 96.0 + ], + [ + -160.0, + -24.0, + 96.0 + ], + [ + -160.0, + -8.0, + 96.0 + ], + [ + -128.0, + -8.0, + 96.0 + ] + ] + }, + { + "firstedge": 186, + "lightofs": -1, + "numedges": 7, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + 96.0, + -232.0, + 96.0 + ], + [ + 96.0, + -88.0, + 96.0 + ], + [ + 96.0, + -24.0, + 96.0 + ], + [ + 96.0, + -8.0, + 96.0 + ], + [ + 288.0, + -8.0, + 96.0 + ], + [ + 288.0, + -208.0, + 96.0 + ], + [ + 288.0, + -232.0, + 96.0 + ] + ] + }, + { + "firstedge": 193, + "lightofs": -1, + "numedges": 5, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + 288.0, + -432.0, + 96.0 + ], + [ + 96.0, + -432.0, + 96.0 + ], + [ + 96.0, + -312.0, + 96.0 + ], + [ + 96.0, + -232.0, + 96.0 + ], + [ + 288.0, + -232.0, + 96.0 + ] + ] + }, + { + "firstedge": 198, + "lightofs": -1, + "numedges": 6, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + -128.0, + -88.0, + 96.0 + ], + [ + -160.0, + -88.0, + 96.0 + ], + [ + -160.0, + -24.0, + 96.0 + ], + [ + -128.0, + -24.0, + 96.0 + ], + [ + 32.0, + -24.0, + 96.0 + ], + [ + 32.0, + -88.0, + 96.0 + ] + ] + }, + { + "firstedge": 204, + "lightofs": -1, + "numedges": 4, + "planenum": 10, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 7, + "vertices": [ + [ + 96.0, + -24.0, + 96.0 + ], + [ + 96.0, + -88.0, + 96.0 + ], + [ + 96.0, + -88.0, + 104.0 + ], + [ + 96.0, + -24.0, + 104.0 + ] + ] + }, + { + "firstedge": 208, + "lightofs": -1, + "numedges": 4, + "planenum": 11, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 8, + "vertices": [ + [ + 96.0, + -88.0, + 96.0 + ], + [ + 32.0, + -88.0, + 96.0 + ], + [ + 32.0, + -88.0, + 104.0 + ], + [ + 96.0, + -88.0, + 104.0 + ] + ] + }, + { + "firstedge": 212, + "lightofs": -1, + "numedges": 4, + "planenum": 12, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 9, + "vertices": [ + [ + 32.0, + -88.0, + 104.0 + ], + [ + 32.0, + -88.0, + 96.0 + ], + [ + 32.0, + -24.0, + 96.0 + ], + [ + 32.0, + -24.0, + 104.0 + ] + ] + }, + { + "firstedge": 216, + "lightofs": -1, + "numedges": 4, + "planenum": 13, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 10, + "vertices": [ + [ + 32.0, + -24.0, + 104.0 + ], + [ + 32.0, + -24.0, + 96.0 + ], + [ + 96.0, + -24.0, + 96.0 + ], + [ + 96.0, + -24.0, + 104.0 + ] + ] + }, + { + "firstedge": 220, + "lightofs": -1, + "numedges": 4, + "planenum": 14, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 11, + "vertices": [ + [ + 96.0, + -88.0, + 104.0 + ], + [ + 32.0, + -88.0, + 104.0 + ], + [ + 32.0, + -24.0, + 104.0 + ], + [ + 96.0, + -24.0, + 104.0 + ] + ] + } + ], + "leaffaces": [ + 20, + 18, + 16, + 14, + 12, + 10, + 8, + 7, + 4, + 26, + 25, + 24, + 23, + 22, + 21, + 2, + 0, + 30, + 6, + 16, + 17, + 18, + 19, + 29, + 28, + 10, + 11, + 12, + 13, + 4, + 5, + 31, + 41, + 14, + 15, + 16, + 17, + 38, + 39, + 0, + 1, + 36, + 27, + 44, + 45, + 43, + 11, + 10, + 36, + 37, + 40, + 0, + 1, + 2, + 3, + 35, + 34, + 33, + 32, + 11, + 10, + 9, + 8, + 42 + ], + "leafs": [ + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -2, + "firstleafbrush": 0, + "firstmarksurface": 0, + "maxs": [ + 0.0, + 0.0, + 0.0 + ], + "mins": [ + 0.0, + 0.0, + 0.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 0, + "visofs": 0 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 0, + "maxs": [ + 288.0, + 176.0, + 352.0 + ], + "mins": [ + -160.0, + -432.0, + 168.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 17, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 17, + "maxs": [ + 288.0, + 176.0, + 168.0 + ], + "mins": [ + 72.0, + -8.0, + 96.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 7, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 24, + "maxs": [ + 56.0, + 176.0, + 168.0 + ], + "mins": [ + -160.0, + -8.0, + 96.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 8, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 32, + "maxs": [ + 288.0, + -8.0, + 168.0 + ], + "mins": [ + 96.0, + -432.0, + 96.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 9, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 41, + "maxs": [ + 96.0, + -8.0, + 168.0 + ], + "mins": [ + 32.0, + -24.0, + 96.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 3, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 44, + "maxs": [ + 96.0, + -24.0, + 168.0 + ], + "mins": [ + 32.0, + -88.0, + 104.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 1, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 45, + "maxs": [ + 32.0, + -8.0, + 168.0 + ], + "mins": [ + -160.0, + -88.0, + 96.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 6, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 51, + "maxs": [ + 96.0, + -88.0, + 168.0 + ], + "mins": [ + -160.0, + -432.0, + 96.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 13, + "visofs": -1 + } + ], + "models": [ + { + "firstface": 0, + "headnode": [ + 0, + 0, + 32, + 0, + 0, + 0, + 0, + 0 + ], + "maxs": [ + 303.0, + 191.0, + 367.0 + ], + "mins": [ + -175.0, + -447.0, + 81.0 + ], + "numfaces": 46, + "origin": [ + 0.0, + 0.0, + 0.0 + ], + "visleafs": 8 + } + ], + "nodes": [ + { + "children": [ + 1, + -1 + ], + "firstface": 0, + "maxs": [ + 328.0, + 216.0, + 392.0 + ], + "mins": [ + -200.0, + -472.0, + 56.0 + ], + "numfaces": 4, + "planenum": 0 + }, + { + "children": [ + -1, + 2 + ], + "firstface": 4, + "maxs": [ + 328.0, + 216.0, + 392.0 + ], + "mins": [ + -200.0, + -432.0, + 56.0 + ], + "numfaces": 4, + "planenum": 1 + }, + { + "children": [ + 3, + -1 + ], + "firstface": 8, + "maxs": [ + 328.0, + 176.0, + 392.0 + ], + "mins": [ + -200.0, + -432.0, + 56.0 + ], + "numfaces": 6, + "planenum": 2 + }, + { + "children": [ + -1, + 4 + ], + "firstface": 14, + "maxs": [ + 328.0, + 176.0, + 392.0 + ], + "mins": [ + -160.0, + -432.0, + 56.0 + ], + "numfaces": 6, + "planenum": 3 + }, + { + "children": [ + 5, + 6 + ], + "firstface": 20, + "maxs": [ + 288.0, + 176.0, + 392.0 + ], + "mins": [ + -160.0, + -432.0, + 56.0 + ], + "numfaces": 1, + "planenum": 4 + }, + { + "children": [ + -1, + -2 + ], + "firstface": 21, + "maxs": [ + 288.0, + 176.0, + 392.0 + ], + "mins": [ + -160.0, + -432.0, + 168.0 + ], + "numfaces": 6, + "planenum": 5 + }, + { + "children": [ + 7, + 11 + ], + "firstface": 27, + "maxs": [ + 288.0, + 176.0, + 168.0 + ], + "mins": [ + -160.0, + -432.0, + 56.0 + ], + "numfaces": 1, + "planenum": 6 + }, + { + "children": [ + 8, + 10 + ], + "firstface": 28, + "maxs": [ + 288.0, + 176.0, + 168.0 + ], + "mins": [ + -160.0, + -8.0, + 56.0 + ], + "numfaces": 1, + "planenum": 7 + }, + { + "children": [ + 9, + -1 + ], + "firstface": 29, + "maxs": [ + 288.0, + 176.0, + 168.0 + ], + "mins": [ + 56.0, + -8.0, + 56.0 + ], + "numfaces": 1, + "planenum": 8 + }, + { + "children": [ + -3, + -1 + ], + "firstface": 30, + "maxs": [ + 288.0, + 176.0, + 168.0 + ], + "mins": [ + 72.0, + -8.0, + 56.0 + ], + "numfaces": 1, + "planenum": 9 + }, + { + "children": [ + -4, + -1 + ], + "firstface": 31, + "maxs": [ + 56.0, + 176.0, + 168.0 + ], + "mins": [ + -160.0, + -8.0, + 56.0 + ], + "numfaces": 1, + "planenum": 9 + }, + { + "children": [ + 12, + -1 + ], + "firstface": 32, + "maxs": [ + 288.0, + -8.0, + 168.0 + ], + "mins": [ + -160.0, + -432.0, + 56.0 + ], + "numfaces": 9, + "planenum": 9 + }, + { + "children": [ + -5, + 13 + ], + "firstface": 41, + "maxs": [ + 288.0, + -8.0, + 168.0 + ], + "mins": [ + -160.0, + -432.0, + 96.0 + ], + "numfaces": 1, + "planenum": 10 + }, + { + "children": [ + 14, + -9 + ], + "firstface": 42, + "maxs": [ + 96.0, + -8.0, + 168.0 + ], + "mins": [ + -160.0, + -432.0, + 96.0 + ], + "numfaces": 1, + "planenum": 11 + }, + { + "children": [ + 15, + -8 + ], + "firstface": 43, + "maxs": [ + 96.0, + -8.0, + 168.0 + ], + "mins": [ + -160.0, + -88.0, + 96.0 + ], + "numfaces": 1, + "planenum": 12 + }, + { + "children": [ + -6, + 16 + ], + "firstface": 44, + "maxs": [ + 96.0, + -8.0, + 168.0 + ], + "mins": [ + 32.0, + -88.0, + 96.0 + ], + "numfaces": 1, + "planenum": 13 + }, + { + "children": [ + -7, + -1 + ], + "firstface": 45, + "maxs": [ + 96.0, + -24.0, + 168.0 + ], + "mins": [ + 32.0, + -88.0, + 96.0 + ], + "numfaces": 1, + "planenum": 14 + } + ], + "planes": [ + { + "dist": -432.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 176.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": -160.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 288.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 168.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 352.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": -8.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 56.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 72.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 96.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 96.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -88.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 32.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -24.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 104.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 320.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 272.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 120.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 88.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 128.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 112.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 192.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 160.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": -144.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 16.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 40.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -416.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": -104.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 288.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 104.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -40.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 128.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 8.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 256.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 144.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": -128.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -0.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 24.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -400.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": -120.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + } + ], + "surfedges": [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + -4, + 8, + 9, + 10, + -3, + 11, + 12, + 13, + 14, + -8, + -10, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + -18, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + -26, + 30, + -16, + 31, + -9, + 32, + 33, + 34, + 35, + 36, + 37, + -12, + -35, + 38, + -34, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + -38, + -42, + 47, + -19, + 48, + -41, + 49, + -22, + 50, + -47, + -48, + 51, + 52, + -1, + 53, + 54, + -7, + 55, + 56, + 57, + -53, + 58, + 59, + -54, + 60, + 61, + -57, + 62, + 63, + 64, + -60, + -27, + -29, + 65, + -61, + 66, + -23, + -66, + -64, + 67, + 68, + 69, + -30, + 70, + -65, + -28, + 71, + 72, + -58, + 73, + 74, + -51, + -59, + -72, + 75, + -2, + -52, + -74, + -31, + -15, + -49, + -40, + 76, + -71, + -39, + -33, + 77, + -73, + -76, + -32, + -11, + -75, + -77, + 78, + 79, + -68, + 80, + -79, + 81, + -20, + -17, + -69, + 82, + -80, + -70, + -25, + -67, + -63, + 83, + 84, + -82, + -24, + 85, + -43, + -50, + -21, + -81, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + -5, + -14, + 94, + -91, + -36, + -46, + 95, + -92, + 96, + -37, + -96, + -94, + -13, + -78, + -84, + 97, + 98, + 99, + 100, + -86, + 101, + -44, + -85, + -100, + -89, + 102, + -97, + -83, + -62, + -56, + 103, + -6, + -93, + -90, + -103, + -55, + -95, + -45, + -101, + -99, + 104, + -87, + -102, + 105, + 106, + 107, + -88, + 108, + 109, + -105, + -108, + -104, + 110, + 111, + -110, + -98, + -107, + 112, + -109, + -111, + -112, + -106 + ], + "texinfo": [ + { + "flags": 0, + "miptex": 0, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -1.0, + 0.0, + 0.0, + -16.0 + ], + [ + 0.0, + 0.0, + -1.0, + -32.0 + ] + ] + }, + { + "flags": 0, + "miptex": 0, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + 0.0, + 1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 0.0, + -1.0, + -32.0 + ] + ] + }, + { + "flags": 0, + "miptex": 0, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -1.0, + 0.0, + 0.0, + -16.0 + ], + [ + 0.0, + -1.0, + 0.0, + 40.0 + ] + ] + }, + { + "flags": 0, + "miptex": 1, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -1.0, + 0.0, + 0.0, + 0.0 + ], + [ + 0.0, + -1.0, + 0.0, + 0.0 + ] + ] + }, + { + "flags": 0, + "miptex": 0, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + 0.0, + 1.0, + 0.0, + -120.0 + ], + [ + 0.0, + 0.0, + -1.0, + -32.0 + ] + ] + }, + { + "flags": 0, + "miptex": 0, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + 0.0, + -1.0, + 0.0, + 88.0 + ], + [ + 0.0, + 0.0, + -1.0, + -32.0 + ] + ] + }, + { + "flags": 0, + "miptex": 1, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -1.0, + 0.0, + 0.0, + 16.0 + ], + [ + 0.0, + -1.0, + 0.0, + 16.0 + ] + ] + }, + { + "flags": 0, + "miptex": 1, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + 0.0, + 0.0, + 1.0, + -16.0 + ], + [ + 0.0, + -1.0, + 0.0, + -24.0 + ] + ] + }, + { + "flags": 0, + "miptex": 1, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -1.0, + 0.0, + 0.0, + -32.0 + ], + [ + 0.0, + 0.0, + -1.0, + 48.0 + ] + ] + }, + { + "flags": 0, + "miptex": 1, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + 0.0, + 0.0, + -1.0, + 48.0 + ], + [ + 0.0, + -1.0, + 0.0, + -24.0 + ] + ] + }, + { + "flags": 0, + "miptex": 1, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -1.0, + 0.0, + 0.0, + -32.0 + ], + [ + 0.0, + 0.0, + 1.0, + -16.0 + ] + ] + }, + { + "flags": 0, + "miptex": 2, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -1.0, + 0.0, + 0.0, + -32.0 + ], + [ + 0.0, + -1.0, + 0.0, + -24.0 + ] + ] + } + ], + "vertexes": [ + [ + 288.0, + -432.0, + 128.0 + ], + [ + 288.0, + -432.0, + 352.0 + ], + [ + 64.0, + -432.0, + 352.0 + ], + [ + 64.0, + -432.0, + 128.0 + ], + [ + 64.0, + -432.0, + 96.0 + ], + [ + 96.0, + -432.0, + 96.0 + ], + [ + 288.0, + -432.0, + 96.0 + ], + [ + -160.0, + -432.0, + 352.0 + ], + [ + -160.0, + -432.0, + 128.0 + ], + [ + -160.0, + -432.0, + 96.0 + ], + [ + -128.0, + -432.0, + 96.0 + ], + [ + -160.0, + 176.0, + 352.0 + ], + [ + 56.0, + 176.0, + 352.0 + ], + [ + 56.0, + 176.0, + 168.0 + ], + [ + 56.0, + 176.0, + 128.0 + ], + [ + -160.0, + 176.0, + 128.0 + ], + [ + 56.0, + 176.0, + 96.0 + ], + [ + -160.0, + 176.0, + 96.0 + ], + [ + 288.0, + 176.0, + 128.0 + ], + [ + 288.0, + 176.0, + 96.0 + ], + [ + 72.0, + 176.0, + 96.0 + ], + [ + 72.0, + 176.0, + 168.0 + ], + [ + 288.0, + 176.0, + 168.0 + ], + [ + 64.0, + 176.0, + 352.0 + ], + [ + 288.0, + 176.0, + 352.0 + ], + [ + -160.0, + -272.0, + 352.0 + ], + [ + -160.0, + -208.0, + 352.0 + ], + [ + -160.0, + -208.0, + 128.0 + ], + [ + -160.0, + -208.0, + 96.0 + ], + [ + -160.0, + -312.0, + 96.0 + ], + [ + -160.0, + -48.0, + 352.0 + ], + [ + -160.0, + 16.0, + 352.0 + ], + [ + -160.0, + 16.0, + 128.0 + ], + [ + -160.0, + 16.0, + 96.0 + ], + [ + -160.0, + -8.0, + 96.0 + ], + [ + -160.0, + -24.0, + 96.0 + ], + [ + -160.0, + -88.0, + 96.0 + ], + [ + 288.0, + -208.0, + 352.0 + ], + [ + 288.0, + -272.0, + 352.0 + ], + [ + 288.0, + -208.0, + 128.0 + ], + [ + 288.0, + -232.0, + 96.0 + ], + [ + 288.0, + -208.0, + 96.0 + ], + [ + 288.0, + 16.0, + 352.0 + ], + [ + 288.0, + -48.0, + 352.0 + ], + [ + 288.0, + 16.0, + 128.0 + ], + [ + 288.0, + -8.0, + 96.0 + ], + [ + 288.0, + 16.0, + 96.0 + ], + [ + 72.0, + -8.0, + 168.0 + ], + [ + 56.0, + -8.0, + 168.0 + ], + [ + 64.0, + -48.0, + 352.0 + ], + [ + 64.0, + -272.0, + 352.0 + ], + [ + 72.0, + -8.0, + 96.0 + ], + [ + 56.0, + -8.0, + 96.0 + ], + [ + 96.0, + -8.0, + 96.0 + ], + [ + -128.0, + -8.0, + 96.0 + ], + [ + -128.0, + -88.0, + 96.0 + ], + [ + 32.0, + -88.0, + 96.0 + ], + [ + 96.0, + -88.0, + 96.0 + ], + [ + 96.0, + -232.0, + 96.0 + ], + [ + 96.0, + -312.0, + 96.0 + ], + [ + -128.0, + -312.0, + 96.0 + ], + [ + 96.0, + -24.0, + 96.0 + ], + [ + 32.0, + -24.0, + 96.0 + ], + [ + -128.0, + -24.0, + 96.0 + ], + [ + 96.0, + -88.0, + 104.0 + ], + [ + 96.0, + -24.0, + 104.0 + ], + [ + 32.0, + -88.0, + 104.0 + ], + [ + 32.0, + -24.0, + 104.0 + ] + ] +} \ No newline at end of file diff --git a/testmaps/reference_bsp_json/qbsp_func_detail_illusionary_plus_water.bsp.json b/testmaps/reference_bsp_json/qbsp_func_detail_illusionary_plus_water.bsp.json new file mode 100644 index 00000000..0c9b29e2 --- /dev/null +++ b/testmaps/reference_bsp_json/qbsp_func_detail_illusionary_plus_water.bsp.json @@ -0,0 +1,2785 @@ +{ + "clipnodes": [ + { + "children": [ + -2, + 1 + ], + "planenum": 17 + }, + { + "children": [ + 2, + -2 + ], + "planenum": 16 + }, + { + "children": [ + 3, + -2 + ], + "planenum": 15 + }, + { + "children": [ + -2, + 4 + ], + "planenum": 14 + }, + { + "children": [ + 5, + -2 + ], + "planenum": 13 + }, + { + "children": [ + -2, + -1 + ], + "planenum": 12 + }, + { + "children": [ + -2, + 7 + ], + "planenum": 22 + }, + { + "children": [ + 8, + -2 + ], + "planenum": 21 + }, + { + "children": [ + 9, + -2 + ], + "planenum": 20 + }, + { + "children": [ + -2, + 10 + ], + "planenum": 19 + }, + { + "children": [ + 11, + -2 + ], + "planenum": 13 + }, + { + "children": [ + -2, + -1 + ], + "planenum": 18 + } + ], + "edges": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 2 + ], + [ + 2, + 3 + ], + [ + 3, + 0 + ], + [ + 4, + 0 + ], + [ + 0, + 3 + ], + [ + 3, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 8 + ], + [ + 8, + 9 + ], + [ + 9, + 6 + ], + [ + 10, + 11 + ], + [ + 11, + 6 + ], + [ + 6, + 9 + ], + [ + 9, + 10 + ], + [ + 11, + 1 + ], + [ + 0, + 6 + ], + [ + 4, + 7 + ], + [ + 6, + 0 + ], + [ + 2, + 10 + ], + [ + 9, + 3 + ], + [ + 3, + 9 + ], + [ + 8, + 5 + ], + [ + 12, + 13 + ], + [ + 13, + 14 + ], + [ + 14, + 15 + ], + [ + 15, + 12 + ], + [ + 15, + 14 + ], + [ + 14, + 13 + ], + [ + 13, + 12 + ], + [ + 12, + 15 + ], + [ + 14, + 16 + ], + [ + 16, + 17 + ], + [ + 17, + 15 + ], + [ + 17, + 16 + ], + [ + 16, + 14 + ], + [ + 15, + 17 + ], + [ + 18, + 19 + ], + [ + 19, + 17 + ], + [ + 16, + 18 + ], + [ + 17, + 19 + ], + [ + 19, + 18 + ], + [ + 18, + 16 + ], + [ + 18, + 13 + ], + [ + 13, + 18 + ], + [ + 12, + 19 + ], + [ + 19, + 12 + ], + [ + 15, + 12 + ], + [ + 12, + 20 + ], + [ + 20, + 21 + ], + [ + 21, + 15 + ], + [ + 17, + 15 + ], + [ + 15, + 21 + ], + [ + 21, + 22 + ], + [ + 22, + 17 + ], + [ + 17, + 22 + ], + [ + 22, + 23 + ], + [ + 23, + 19 + ], + [ + 19, + 17 + ], + [ + 19, + 23 + ], + [ + 23, + 20 + ], + [ + 20, + 12 + ], + [ + 12, + 19 + ] + ], + "entdata": "{\n\"wad\" \"deprecated/fence.wad;deprecated/free_wad.wad\"\n\"classname\" \"worldspawn\"\n\"mapversion\" \"220\"\n}\n{\n\"light\" \"3000\"\n\"origin\" \"72 -136 168\"\n\"classname\" \"light\"\n}\n{\n\"origin\" \"-88 -64 120\"\n\"classname\" \"info_player_start\"\n}\n\u0000", + "faces": [ + { + "firstedge": 0, + "lightofs": -1, + "numedges": 4, + "planenum": 0, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + -160.0, + -432.0, + 80.0 + ], + [ + -160.0, + -432.0, + 16.0 + ], + [ + 288.0, + -432.0, + 16.0 + ], + [ + 288.0, + -432.0, + 80.0 + ] + ] + }, + { + "firstedge": 4, + "lightofs": -1, + "numedges": 4, + "planenum": 0, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + -160.0, + -432.0, + 272.0 + ], + [ + -160.0, + -432.0, + 80.0 + ], + [ + 288.0, + -432.0, + 80.0 + ], + [ + 288.0, + -432.0, + 272.0 + ] + ] + }, + { + "firstedge": 8, + "lightofs": -1, + "numedges": 4, + "planenum": 1, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + -160.0, + 176.0, + 80.0 + ], + [ + -160.0, + 176.0, + 272.0 + ], + [ + 288.0, + 176.0, + 272.0 + ], + [ + 288.0, + 176.0, + 80.0 + ] + ] + }, + { + "firstedge": 12, + "lightofs": -1, + "numedges": 4, + "planenum": 1, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 0, + "vertices": [ + [ + 288.0, + 176.0, + 16.0 + ], + [ + -160.0, + 176.0, + 16.0 + ], + [ + -160.0, + 176.0, + 80.0 + ], + [ + 288.0, + 176.0, + 80.0 + ] + ] + }, + { + "firstedge": 16, + "lightofs": -1, + "numedges": 4, + "planenum": 2, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + -160.0, + 176.0, + 16.0 + ], + [ + -160.0, + -432.0, + 16.0 + ], + [ + -160.0, + -432.0, + 80.0 + ], + [ + -160.0, + 176.0, + 80.0 + ] + ] + }, + { + "firstedge": 20, + "lightofs": -1, + "numedges": 4, + "planenum": 2, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + -160.0, + -432.0, + 80.0 + ], + [ + -160.0, + -432.0, + 272.0 + ], + [ + -160.0, + 176.0, + 272.0 + ], + [ + -160.0, + 176.0, + 80.0 + ] + ] + }, + { + "firstedge": 24, + "lightofs": -1, + "numedges": 4, + "planenum": 3, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + 288.0, + -432.0, + 80.0 + ], + [ + 288.0, + -432.0, + 16.0 + ], + [ + 288.0, + 176.0, + 16.0 + ], + [ + 288.0, + 176.0, + 80.0 + ] + ] + }, + { + "firstedge": 28, + "lightofs": -1, + "numedges": 4, + "planenum": 3, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 1, + "vertices": [ + [ + 288.0, + -432.0, + 272.0 + ], + [ + 288.0, + -432.0, + 80.0 + ], + [ + 288.0, + 176.0, + 80.0 + ], + [ + 288.0, + 176.0, + 272.0 + ] + ] + }, + { + "firstedge": 32, + "lightofs": -1, + "numedges": 4, + "planenum": 4, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 2, + "vertices": [ + [ + 288.0, + 176.0, + 80.0 + ], + [ + -160.0, + 176.0, + 80.0 + ], + [ + -160.0, + -432.0, + 80.0 + ], + [ + 288.0, + -432.0, + 80.0 + ] + ] + }, + { + "firstedge": 36, + "lightofs": -1, + "numedges": 4, + "planenum": 4, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 2, + "vertices": [ + [ + 288.0, + -432.0, + 80.0 + ], + [ + -160.0, + -432.0, + 80.0 + ], + [ + -160.0, + 176.0, + 80.0 + ], + [ + 288.0, + 176.0, + 80.0 + ] + ] + }, + { + "firstedge": 40, + "lightofs": -1, + "numedges": 4, + "planenum": 5, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 3, + "vertices": [ + [ + 288.0, + 176.0, + 272.0 + ], + [ + -160.0, + 176.0, + 272.0 + ], + [ + -160.0, + -432.0, + 272.0 + ], + [ + 288.0, + -432.0, + 272.0 + ] + ] + }, + { + "firstedge": 44, + "lightofs": -1, + "numedges": 4, + "planenum": 6, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 4, + "vertices": [ + [ + 16.0, + -104.0, + 80.0 + ], + [ + 16.0, + -104.0, + 128.0 + ], + [ + 40.0, + -104.0, + 128.0 + ], + [ + 40.0, + -104.0, + 80.0 + ] + ] + }, + { + "firstedge": 48, + "lightofs": -1, + "numedges": 4, + "planenum": 6, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 4, + "vertices": [ + [ + 40.0, + -104.0, + 80.0 + ], + [ + 40.0, + -104.0, + 128.0 + ], + [ + 16.0, + -104.0, + 128.0 + ], + [ + 16.0, + -104.0, + 80.0 + ] + ] + }, + { + "firstedge": 52, + "lightofs": -1, + "numedges": 4, + "planenum": 7, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 5, + "vertices": [ + [ + 40.0, + -104.0, + 80.0 + ], + [ + 40.0, + -104.0, + 128.0 + ], + [ + 40.0, + -80.0, + 128.0 + ], + [ + 40.0, + -80.0, + 80.0 + ] + ] + }, + { + "firstedge": 56, + "lightofs": -1, + "numedges": 4, + "planenum": 7, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 5, + "vertices": [ + [ + 40.0, + -80.0, + 80.0 + ], + [ + 40.0, + -80.0, + 128.0 + ], + [ + 40.0, + -104.0, + 128.0 + ], + [ + 40.0, + -104.0, + 80.0 + ] + ] + }, + { + "firstedge": 60, + "lightofs": -1, + "numedges": 4, + "planenum": 8, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 4, + "vertices": [ + [ + 16.0, + -80.0, + 128.0 + ], + [ + 16.0, + -80.0, + 80.0 + ], + [ + 40.0, + -80.0, + 80.0 + ], + [ + 40.0, + -80.0, + 128.0 + ] + ] + }, + { + "firstedge": 64, + "lightofs": -1, + "numedges": 4, + "planenum": 8, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 4, + "vertices": [ + [ + 40.0, + -80.0, + 128.0 + ], + [ + 40.0, + -80.0, + 80.0 + ], + [ + 16.0, + -80.0, + 80.0 + ], + [ + 16.0, + -80.0, + 128.0 + ] + ] + }, + { + "firstedge": 68, + "lightofs": -1, + "numedges": 4, + "planenum": 9, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + 40.0, + -80.0, + 128.0 + ], + [ + 16.0, + -80.0, + 128.0 + ], + [ + 16.0, + -104.0, + 128.0 + ], + [ + 40.0, + -104.0, + 128.0 + ] + ] + }, + { + "firstedge": 72, + "lightofs": -1, + "numedges": 4, + "planenum": 9, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 6, + "vertices": [ + [ + 40.0, + -104.0, + 128.0 + ], + [ + 16.0, + -104.0, + 128.0 + ], + [ + 16.0, + -80.0, + 128.0 + ], + [ + 40.0, + -80.0, + 128.0 + ] + ] + }, + { + "firstedge": 76, + "lightofs": -1, + "numedges": 4, + "planenum": 10, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 7, + "vertices": [ + [ + 16.0, + -104.0, + 128.0 + ], + [ + 16.0, + -104.0, + 80.0 + ], + [ + 16.0, + -80.0, + 80.0 + ], + [ + 16.0, + -80.0, + 128.0 + ] + ] + }, + { + "firstedge": 80, + "lightofs": -1, + "numedges": 4, + "planenum": 10, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 7, + "vertices": [ + [ + 16.0, + -80.0, + 128.0 + ], + [ + 16.0, + -80.0, + 80.0 + ], + [ + 16.0, + -104.0, + 80.0 + ], + [ + 16.0, + -104.0, + 128.0 + ] + ] + }, + { + "firstedge": 84, + "lightofs": -1, + "numedges": 4, + "planenum": 11, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 8, + "vertices": [ + [ + 288.0, + -432.0, + 16.0 + ], + [ + -160.0, + -432.0, + 16.0 + ], + [ + -160.0, + 176.0, + 16.0 + ], + [ + 288.0, + 176.0, + 16.0 + ] + ] + }, + { + "firstedge": 88, + "lightofs": -1, + "numedges": 4, + "planenum": 6, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 4, + "vertices": [ + [ + 40.0, + -104.0, + 80.0 + ], + [ + 16.0, + -104.0, + 80.0 + ], + [ + 16.0, + -104.0, + 16.0 + ], + [ + 40.0, + -104.0, + 16.0 + ] + ] + }, + { + "firstedge": 92, + "lightofs": -1, + "numedges": 4, + "planenum": 6, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 4, + "vertices": [ + [ + 40.0, + -104.0, + 16.0 + ], + [ + 16.0, + -104.0, + 16.0 + ], + [ + 16.0, + -104.0, + 80.0 + ], + [ + 40.0, + -104.0, + 80.0 + ] + ] + }, + { + "firstedge": 96, + "lightofs": -1, + "numedges": 4, + "planenum": 7, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 5, + "vertices": [ + [ + 40.0, + -80.0, + 80.0 + ], + [ + 40.0, + -104.0, + 80.0 + ], + [ + 40.0, + -104.0, + 16.0 + ], + [ + 40.0, + -80.0, + 16.0 + ] + ] + }, + { + "firstedge": 100, + "lightofs": -1, + "numedges": 4, + "planenum": 7, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 5, + "vertices": [ + [ + 40.0, + -80.0, + 16.0 + ], + [ + 40.0, + -104.0, + 16.0 + ], + [ + 40.0, + -104.0, + 80.0 + ], + [ + 40.0, + -80.0, + 80.0 + ] + ] + }, + { + "firstedge": 104, + "lightofs": -1, + "numedges": 4, + "planenum": 8, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 4, + "vertices": [ + [ + 40.0, + -80.0, + 80.0 + ], + [ + 40.0, + -80.0, + 16.0 + ], + [ + 16.0, + -80.0, + 16.0 + ], + [ + 16.0, + -80.0, + 80.0 + ] + ] + }, + { + "firstedge": 108, + "lightofs": -1, + "numedges": 4, + "planenum": 8, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 4, + "vertices": [ + [ + 16.0, + -80.0, + 80.0 + ], + [ + 16.0, + -80.0, + 16.0 + ], + [ + 40.0, + -80.0, + 16.0 + ], + [ + 40.0, + -80.0, + 80.0 + ] + ] + }, + { + "firstedge": 112, + "lightofs": -1, + "numedges": 4, + "planenum": 10, + "side": 0, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 7, + "vertices": [ + [ + 16.0, + -80.0, + 80.0 + ], + [ + 16.0, + -80.0, + 16.0 + ], + [ + 16.0, + -104.0, + 16.0 + ], + [ + 16.0, + -104.0, + 80.0 + ] + ] + }, + { + "firstedge": 116, + "lightofs": -1, + "numedges": 4, + "planenum": 10, + "side": 1, + "styles": [ + 255, + 255, + 255, + 255 + ], + "texinfo": 7, + "vertices": [ + [ + 16.0, + -104.0, + 80.0 + ], + [ + 16.0, + -104.0, + 16.0 + ], + [ + 16.0, + -80.0, + 16.0 + ], + [ + 16.0, + -80.0, + 80.0 + ] + ] + } + ], + "leaffaces": [ + 13, + 10, + 7, + 2, + 9, + 5, + 9, + 2, + 10, + 15, + 18, + 10, + 5, + 9, + 20, + 12, + 17, + 16, + 14, + 5, + 9, + 19, + 5, + 1, + 9, + 7, + 10, + 11, + 25, + 6, + 3, + 8, + 21, + 4, + 21, + 8, + 3, + 27, + 24, + 26, + 22, + 28, + 8, + 21, + 29, + 8, + 21, + 4, + 4, + 0, + 21, + 8, + 6, + 23 + ], + "leafs": [ + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -2, + "firstleafbrush": 0, + "firstmarksurface": 0, + "maxs": [ + 0.0, + 0.0, + 0.0 + ], + "mins": [ + 0.0, + 0.0, + 0.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 0, + "visofs": 0 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 0, + "maxs": [ + 288.0, + 176.0, + 272.0 + ], + "mins": [ + 40.0, + -104.0, + 80.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 5, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 5, + "maxs": [ + 40.0, + 176.0, + 272.0 + ], + "mins": [ + -160.0, + -80.0, + 80.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 5, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 10, + "maxs": [ + 40.0, + -80.0, + 272.0 + ], + "mins": [ + -160.0, + -104.0, + 128.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 3, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 13, + "maxs": [ + 40.0, + -80.0, + 128.0 + ], + "mins": [ + 16.0, + -104.0, + 80.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 6, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 19, + "maxs": [ + 16.0, + -80.0, + 128.0 + ], + "mins": [ + -160.0, + -104.0, + 80.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 3, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -1, + "firstleafbrush": 0, + "firstmarksurface": 22, + "maxs": [ + 288.0, + -104.0, + 272.0 + ], + "mins": [ + -160.0, + -432.0, + 80.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 6, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -3, + "firstleafbrush": 0, + "firstmarksurface": 28, + "maxs": [ + 288.0, + 176.0, + 80.0 + ], + "mins": [ + 40.0, + -104.0, + 16.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 5, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -3, + "firstleafbrush": 0, + "firstmarksurface": 33, + "maxs": [ + 40.0, + 176.0, + 80.0 + ], + "mins": [ + -160.0, + -80.0, + 16.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 5, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -3, + "firstleafbrush": 0, + "firstmarksurface": 38, + "maxs": [ + 40.0, + -80.0, + 80.0 + ], + "mins": [ + 16.0, + -104.0, + 16.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 6, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -3, + "firstleafbrush": 0, + "firstmarksurface": 44, + "maxs": [ + 16.0, + -80.0, + 80.0 + ], + "mins": [ + -160.0, + -104.0, + 16.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 4, + "visofs": -1 + }, + { + "ambient_level": [ + 0, + 0, + 0, + 0 + ], + "area": 0, + "cluster": 0, + "contents": -3, + "firstleafbrush": 0, + "firstmarksurface": 48, + "maxs": [ + 288.0, + -104.0, + 80.0 + ], + "mins": [ + -160.0, + -432.0, + 16.0 + ], + "numleafbrushes": 0, + "nummarksurfaces": 6, + "visofs": -1 + } + ], + "models": [ + { + "firstface": 0, + "headnode": [ + 0, + 0, + 6, + 0, + 0, + 0, + 0, + 0 + ], + "maxs": [ + 303.0, + 191.0, + 287.0 + ], + "mins": [ + -175.0, + -447.0, + 1.0 + ], + "numfaces": 30, + "origin": [ + 0.0, + 0.0, + 0.0 + ], + "visleafs": 11 + } + ], + "nodes": [ + { + "children": [ + 1, + -1 + ], + "firstface": 0, + "maxs": [ + 328.0, + 216.0, + 312.0 + ], + "mins": [ + -200.0, + -472.0, + -24.0 + ], + "numfaces": 2, + "planenum": 0 + }, + { + "children": [ + -1, + 2 + ], + "firstface": 2, + "maxs": [ + 328.0, + 216.0, + 312.0 + ], + "mins": [ + -200.0, + -432.0, + -24.0 + ], + "numfaces": 2, + "planenum": 1 + }, + { + "children": [ + 3, + -1 + ], + "firstface": 4, + "maxs": [ + 328.0, + 176.0, + 312.0 + ], + "mins": [ + -200.0, + -432.0, + -24.0 + ], + "numfaces": 2, + "planenum": 2 + }, + { + "children": [ + -1, + 4 + ], + "firstface": 6, + "maxs": [ + 328.0, + 176.0, + 312.0 + ], + "mins": [ + -160.0, + -432.0, + -24.0 + ], + "numfaces": 2, + "planenum": 3 + }, + { + "children": [ + 5, + 11 + ], + "firstface": 8, + "maxs": [ + 288.0, + 176.0, + 312.0 + ], + "mins": [ + -160.0, + -432.0, + -24.0 + ], + "numfaces": 2, + "planenum": 4 + }, + { + "children": [ + -1, + 6 + ], + "firstface": 10, + "maxs": [ + 288.0, + 176.0, + 312.0 + ], + "mins": [ + -160.0, + -432.0, + 80.0 + ], + "numfaces": 1, + "planenum": 5 + }, + { + "children": [ + 7, + -7 + ], + "firstface": 11, + "maxs": [ + 288.0, + 176.0, + 272.0 + ], + "mins": [ + -160.0, + -432.0, + 80.0 + ], + "numfaces": 2, + "planenum": 6 + }, + { + "children": [ + -2, + 8 + ], + "firstface": 13, + "maxs": [ + 288.0, + 176.0, + 272.0 + ], + "mins": [ + -160.0, + -104.0, + 80.0 + ], + "numfaces": 2, + "planenum": 7 + }, + { + "children": [ + -3, + 9 + ], + "firstface": 15, + "maxs": [ + 40.0, + 176.0, + 272.0 + ], + "mins": [ + -160.0, + -104.0, + 80.0 + ], + "numfaces": 2, + "planenum": 8 + }, + { + "children": [ + -4, + 10 + ], + "firstface": 17, + "maxs": [ + 40.0, + -80.0, + 272.0 + ], + "mins": [ + -160.0, + -104.0, + 80.0 + ], + "numfaces": 2, + "planenum": 9 + }, + { + "children": [ + -5, + -6 + ], + "firstface": 19, + "maxs": [ + 40.0, + -80.0, + 128.0 + ], + "mins": [ + -160.0, + -104.0, + 80.0 + ], + "numfaces": 2, + "planenum": 10 + }, + { + "children": [ + 12, + -1 + ], + "firstface": 21, + "maxs": [ + 288.0, + 176.0, + 80.0 + ], + "mins": [ + -160.0, + -432.0, + -24.0 + ], + "numfaces": 1, + "planenum": 11 + }, + { + "children": [ + 13, + -12 + ], + "firstface": 22, + "maxs": [ + 288.0, + 176.0, + 80.0 + ], + "mins": [ + -160.0, + -432.0, + 16.0 + ], + "numfaces": 2, + "planenum": 6 + }, + { + "children": [ + -8, + 14 + ], + "firstface": 24, + "maxs": [ + 288.0, + 176.0, + 80.0 + ], + "mins": [ + -160.0, + -104.0, + 16.0 + ], + "numfaces": 2, + "planenum": 7 + }, + { + "children": [ + -9, + 15 + ], + "firstface": 26, + "maxs": [ + 40.0, + 176.0, + 80.0 + ], + "mins": [ + -160.0, + -104.0, + 16.0 + ], + "numfaces": 2, + "planenum": 8 + }, + { + "children": [ + -10, + -11 + ], + "firstface": 28, + "maxs": [ + 40.0, + -80.0, + 80.0 + ], + "mins": [ + -160.0, + -104.0, + 16.0 + ], + "numfaces": 2, + "planenum": 10 + } + ], + "planes": [ + { + "dist": -432.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 176.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": -160.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 288.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 80.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 272.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": -104.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 40.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -80.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 128.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 16.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": 16.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 240.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 40.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 272.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -144.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -416.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 160.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 208.0, + "normal": [ + 0.0, + 0.0, + 1.0 + ], + "type": 2 + }, + { + "dist": 256.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -128.0, + "normal": [ + 1.0, + 0.0, + 0.0 + ], + "type": 0 + }, + { + "dist": -400.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + }, + { + "dist": 144.0, + "normal": [ + 0.0, + 1.0, + 0.0 + ], + "type": 1 + } + ], + "surfedges": [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + -1, + 18, + -14, + -5, + 19, + -9, + 20, + -3, + 21, + -16, + 22, + -7, + 23, + -11, + 24, + -15, + -18, + -4, + -22, + -6, + -20, + -12, + -23, + -10, + -19, + -8, + -24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + -27, + 33, + 34, + 35, + 36, + 37, + -29, + 38, + 39, + 40, + -34, + 41, + -36, + 42, + 43, + 44, + -44, + 45, + -30, + -37, + -26, + 46, + -41, + -33, + -25, + 47, + -39, + -46, + -43, + 48, + -31, + -45, + -2, + -17, + -13, + -21, + 49, + 50, + 51, + 52, + -51, + -50, + -49, + -52, + 53, + 54, + 55, + 56, + -55, + -54, + -53, + -56, + 57, + 58, + 59, + 60, + -59, + -58, + -57, + -60, + 61, + 62, + 63, + 64, + -63, + -62, + -61, + -64 + ], + "texinfo": [ + { + "flags": 0, + "miptex": 1, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -0.1666666716337204, + 0.0, + 0.0, + -16.0 + ], + [ + 0.0, + 0.0, + -0.1666666716337204, + 16.0 + ] + ] + }, + { + "flags": 0, + "miptex": 1, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + 0.0, + 0.1666666716337204, + 0.0, + 0.0 + ], + [ + 0.0, + 0.0, + -0.1666666716337204, + 16.0 + ] + ] + }, + { + "flags": 1, + "miptex": 0, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + 0.1666666716337204, + 0.0, + 0.0, + 0.0 + ], + [ + 0.0, + -0.1666666716337204, + 0.0, + -16.0 + ] + ] + }, + { + "flags": 0, + "miptex": 2, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -0.1666666716337204, + 0.0, + 0.0, + 0.0 + ], + [ + 0.0, + -0.1666666716337204, + 0.0, + 0.0 + ] + ] + }, + { + "flags": 0, + "miptex": 3, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -0.1666666716337204, + 0.0, + 0.0, + 32.0 + ], + [ + 0.0, + 0.0, + -0.1666666716337204, + -32.0 + ] + ] + }, + { + "flags": 0, + "miptex": 3, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + 0.0, + -0.1666666716337204, + 0.0, + 12.0 + ], + [ + 0.0, + 0.0, + -0.1666666716337204, + -32.0 + ] + ] + }, + { + "flags": 0, + "miptex": 3, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -0.1666666716337204, + 0.0, + 0.0, + 32.0 + ], + [ + 0.0, + -0.1666666716337204, + 0.0, + -8.0 + ] + ] + }, + { + "flags": 0, + "miptex": 3, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + 0.0, + 0.1666666716337204, + 0.0, + 42.666664123535156 + ], + [ + 0.0, + 0.0, + -0.1666666716337204, + -32.0 + ] + ] + }, + { + "flags": 0, + "miptex": 2, + "nexttexinfo": 0, + "texture": "", + "value": 0, + "vecs": [ + [ + -0.1666666716337204, + 0.0, + 0.0, + 16.0 + ], + [ + 0.0, + -0.1666666716337204, + 0.0, + 16.0 + ] + ] + } + ], + "vertexes": [ + [ + -160.0, + -432.0, + 80.0 + ], + [ + -160.0, + -432.0, + 16.0 + ], + [ + 288.0, + -432.0, + 16.0 + ], + [ + 288.0, + -432.0, + 80.0 + ], + [ + -160.0, + -432.0, + 272.0 + ], + [ + 288.0, + -432.0, + 272.0 + ], + [ + -160.0, + 176.0, + 80.0 + ], + [ + -160.0, + 176.0, + 272.0 + ], + [ + 288.0, + 176.0, + 272.0 + ], + [ + 288.0, + 176.0, + 80.0 + ], + [ + 288.0, + 176.0, + 16.0 + ], + [ + -160.0, + 176.0, + 16.0 + ], + [ + 16.0, + -104.0, + 80.0 + ], + [ + 16.0, + -104.0, + 128.0 + ], + [ + 40.0, + -104.0, + 128.0 + ], + [ + 40.0, + -104.0, + 80.0 + ], + [ + 40.0, + -80.0, + 128.0 + ], + [ + 40.0, + -80.0, + 80.0 + ], + [ + 16.0, + -80.0, + 128.0 + ], + [ + 16.0, + -80.0, + 80.0 + ], + [ + 16.0, + -104.0, + 16.0 + ], + [ + 40.0, + -104.0, + 16.0 + ], + [ + 40.0, + -80.0, + 16.0 + ], + [ + 16.0, + -80.0, + 16.0 + ] + ] +} \ No newline at end of file From 48652c7155196e8f148a435ae5a8ae4adb64cb58 Mon Sep 17 00:00:00 2001 From: Eric Wasylishen Date: Wed, 6 Oct 2021 17:23:10 -0600 Subject: [PATCH 2/4] CI: add bspinfo/bsputil to PATH before running regression tests --- build-appveyor.ps1 | 2 +- build-linux-64.sh | 6 +++++- build-osx.sh | 6 +++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/build-appveyor.ps1 b/build-appveyor.ps1 index 8183374b..19a3ebe0 100644 --- a/build-appveyor.ps1 +++ b/build-appveyor.ps1 @@ -43,7 +43,7 @@ if ( $? -eq $false ) { throw "testqbsp failed" } -$env:Path += ";$(pwd)\qbsp\Release;$(pwd)\vis\Release;$(pwd)\light\Release" +$env:Path += ";$(pwd)\qbsp\Release;$(pwd)\vis\Release;$(pwd)\light\Release;$(pwd)\bspinfo\Release;$(pwd)\bsputil\Release" cd ..\testmaps diff --git a/build-linux-64.sh b/build-linux-64.sh index c0879f74..837501dd 100755 --- a/build-linux-64.sh +++ b/build-linux-64.sh @@ -37,6 +37,10 @@ readelf -d ./ericw-tools-*/bin/light # run regression tests cd .. -export PATH="$(pwd)/$BUILD_DIR/qbsp:$(pwd)/$BUILD_DIR/light:$(pwd)/$BUILD_DIR/vis:$PATH" +export PATH="$(pwd)/$BUILD_DIR/qbsp:$PATH" +export PATH="$(pwd)/$BUILD_DIR/vis:$PATH" +export PATH="$(pwd)/$BUILD_DIR/light:$PATH" +export PATH="$(pwd)/$BUILD_DIR/bspinfo:$PATH" +export PATH="$(pwd)/$BUILD_DIR/bsputil:$PATH" cd testmaps ./automatated_tests.sh || exit 1 diff --git a/build-osx.sh b/build-osx.sh index 87bb5ada..37505e9e 100755 --- a/build-osx.sh +++ b/build-osx.sh @@ -51,6 +51,10 @@ otool -L ./bsputil/bsputil # run regression tests cd .. -export PATH="$(pwd)/$BUILD_DIR/qbsp:$(pwd)/$BUILD_DIR/light:$(pwd)/$BUILD_DIR/vis:$PATH" +export PATH="$(pwd)/$BUILD_DIR/qbsp:$PATH" +export PATH="$(pwd)/$BUILD_DIR/vis:$PATH" +export PATH="$(pwd)/$BUILD_DIR/light:$PATH" +export PATH="$(pwd)/$BUILD_DIR/bspinfo:$PATH" +export PATH="$(pwd)/$BUILD_DIR/bsputil:$PATH" cd testmaps ./automatated_tests.sh || exit 1 From d73b89015a18239cc26b05ae9a95f2cb5be650bb Mon Sep 17 00:00:00 2001 From: Eric Wasylishen Date: Wed, 6 Oct 2021 17:23:30 -0600 Subject: [PATCH 3/4] CI: remove unused travis config --- travis.yml.bak | 29 ----------------------------- 1 file changed, 29 deletions(-) delete mode 100644 travis.yml.bak diff --git a/travis.yml.bak b/travis.yml.bak deleted file mode 100644 index a6b3c137..00000000 --- a/travis.yml.bak +++ /dev/null @@ -1,29 +0,0 @@ -language: cpp - -matrix: - include: - - os: linux - dist: trusty - sudo: required - - os: osx - osx_image: xcode8.2 - -before_install: - - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi - - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo apt-get -qq update; fi - - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo apt-get install -y groff; fi -script: - - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ./build-osx.sh; fi - - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ./build-linux-64.sh; fi -deploy: - provider: releases - file_glob: true - skip_cleanup: true - api_key: - secure: EBxXqVjU7AGBOHbf9MWmmlEX7wpJwi8faLbUjKB19M5MzGSKdvSHTnRTFWLt80+1S1qr/PlZUxeyl+xGGQ1PFHvlALGUGVveVJ/5MGHP+aRhPJgvQ0A15KWQrba4Yy5rbw+DlAOznUmmn+cmnjeEdT3J9eLF73GKYtEWB6qT2E8= - file: - - "build-osx/*.zip" - - "build/*.zip" - on: - repo: ericwa/ericw-tools - tags: true From ca7002cb389ec20021441ee1fb009abf100a083c Mon Sep 17 00:00:00 2001 From: Eric Wasylishen Date: Wed, 6 Oct 2021 17:54:34 -0600 Subject: [PATCH 4/4] qbsp: preserve .map file order of epairs --- qbsp/map.cc | 8 +++++-- testmaps/qbsp-vis.sha256sum | 24 +++++++++---------- testmaps/qbsp.sha256sum | 24 +++++++++---------- .../qbsp_func_detail.bsp.json | 2 +- ...unc_detail_illusionary_plus_water.bsp.json | 2 +- 5 files changed, 32 insertions(+), 28 deletions(-) diff --git a/qbsp/map.cc b/qbsp/map.cc index 252dae4e..6aca436a 100644 --- a/qbsp/map.cc +++ b/qbsp/map.cc @@ -486,9 +486,13 @@ ParseEpair(parser_t *parser, mapentity_t *entity) { epair_t *epair; + epair_t **next_ptr = &entity->epairs; + while (*next_ptr) { + next_ptr = &(*next_ptr)->next; + } + epair = (epair_t *)AllocMem(OTHER, sizeof(epair_t), true); - epair->next = entity->epairs; - entity->epairs = epair; + *next_ptr = epair; if (strlen(parser->token) >= MAX_KEY - 1) goto parse_error; diff --git a/testmaps/qbsp-vis.sha256sum b/testmaps/qbsp-vis.sha256sum index d56a413b..e0c0457d 100644 --- a/testmaps/qbsp-vis.sha256sum +++ b/testmaps/qbsp-vis.sha256sum @@ -1,12 +1,12 @@ -416e68cd92c817f206c11006db21bd6b0cbc330eee63bdfc66afc5152b406760 *qbsp_func_detail.bsp -c338b813b6529e5cd790720e3bc6a9e8f74e02e3348db04756174403f3331b8c *qbsp_func_detail_illusionary_plus_water.bsp -c9683e945bb01528a768653cdb79584dfbc8be6f76b712cbf0d24482a4ae3cc3 *e1m1-bsp29.bsp -a8024b07d48abc0553ff3628d6d4cb62138f67808b425b833e5643068231c2e4 *e1m1-bsp2.bsp -cb11d4f40d92c9d349fd11f9e4901e9cd9aa82db9971181a615c197f75f4b4a6 *e1m1-2psb.bsp -f5656ae5a98b4044568e70a411afe2b37cae41c14f7262f26be2aa45aebc3672 *e1m1-hexen2.bsp -4e0fec87702736481d08d67366f300bf351944f0ebcd4daafa56cbfb2f509893 *e1m1-hexen2-bsp2.bsp -a5eb5b451baab8db48a141285479669656010fc7d3945e30672d609169b040e5 *e1m1-hexen2-2psb.bsp -ecf7a82cfad86c3b8a330645233c17011f77b8fef844130ac85dd6e8972eea8f *e1m1-hlbsp.bsp -ce687f32a1059eb60bfb2b3868dc5fa8446a62aefc40f9cb459d0242b16b39ef *e1m1-bspxbrushes.bsp -0feeb8e76b2c3e0a9d8abf1233fc1450e85c6b54ade5a96dea9f965f0fbc2dde *e1m1-bsp29-onlyents.bsp -8536a7000d995ec1c9365aebe492412f0d175ef49b72f30990b621b48145d881 *qbspfeatures.bsp +d826cb6697a05a349942df7cc016ef3c7a01dd1ad220a7555ec4b7c99ed50840 *qbsp_func_detail.bsp +8e28e1c2dbaf670e4b38e50ec79d4806b7c866a37c1bca492ffb6b554de2072d *qbsp_func_detail_illusionary_plus_water.bsp +e6b67b2cc464e000896dc547b19b77074bbcb029fd9e39546a2a56da2eb74894 *e1m1-bsp29.bsp +9d15751394e7192c8f0fb5e9b832aca9c04bcf97213935e37680273cb90bcfe0 *e1m1-bsp2.bsp +97e0e9fa25ab257a0ea610964d821bee0cbd55dddd4c8fd60bffe9a11de1739d *e1m1-2psb.bsp +b617f77a387efe4c6eb398f254d5b72e85fb4b377f0512ec65232092ca4dc30b *e1m1-hexen2.bsp +cde34a66f76fc4dd7cdf36f43b68a7256f80f1083ef50822ef1b60484d4985ab *e1m1-hexen2-bsp2.bsp +8f038b13625aa708daea90a0a63b5481d3314ea603572165dc79243d14ba8034 *e1m1-hexen2-2psb.bsp +bd4ecbfb7ca9002fc54d6c42a54d120ec67e9638f7329a7d0465afcfeb30dc88 *e1m1-hlbsp.bsp +48fc09913eec1ea1c09edf651824b3fd63a55274d1b3f54e39aa537b93132959 *e1m1-bspxbrushes.bsp +e5cd1c62ddc896d8e0363877df05ca41e305818c93044e7952738a99cfc5e5a1 *e1m1-bsp29-onlyents.bsp +e8a677558ea4d0e870ad2b3eae0150a20f1e06295a0089a966becd61401d53a5 *qbspfeatures.bsp diff --git a/testmaps/qbsp.sha256sum b/testmaps/qbsp.sha256sum index 3ae8cee3..5eb38777 100644 --- a/testmaps/qbsp.sha256sum +++ b/testmaps/qbsp.sha256sum @@ -1,15 +1,15 @@ -45d60368c37ee3523f9a1dbc140f34ae7728fc13d3cb8a43e7b22caefe46edb1 *qbsp_func_detail.bsp -565e9aef399341eef99fc37212d7ab314df8f6dd850a8ca5a471661088d7d3bc *qbsp_func_detail_illusionary_plus_water.bsp -d289427e3c8a7046dce509a83401f6732a9c5f8194f8beb3eee431e33215656c *e1m1-bsp29.bsp -85002a12afa023d850199e205f01fc58de2743f97aea9b2a22a3b0ac3ce8f7ad *e1m1-bsp2.bsp -832ec9aff302ddfcc5ab4fe0911afec0b4d57c60e02dc1c8f61e1edbf8f53eda *e1m1-2psb.bsp -5e20fca2a3b6c975efe257a5768d8f8cde10ecb96abec535ea2c2d0b45d3a051 *e1m1-hexen2.bsp -018b759817dcc2ca343bdd38d511c455c13be992734e97e2fa1ad88e614240b1 *e1m1-hexen2-bsp2.bsp -015c582d9a76ec0f911c5d5f2e7ebcc1ad01ee81860dd113222259f65a40e953 *e1m1-hexen2-2psb.bsp -66936b95d27716cbcb28bc6bf8a0191f8d53bc7e2823abcb85cd04fec9d2fcb6 *e1m1-hlbsp.bsp -015c5fb3f350dfb10c031ed3ae44b3e094fbde38c48dec0897d0710fcbc7666c *e1m1-bspxbrushes.bsp -af7bc468d76aa1b11d1881a3378877059c6fd33fb37bea555d332e17d0e1e23c *e1m1-bsp29-onlyents.bsp -9f6db65a0c8a3eaa369deb3bb3168b5da69f23eb80a12788ff50d3c30b8a469a *qbspfeatures.bsp +1a6d64c09916e89ca9be0f78f1382bb26758249a6ea37673a974f746a7ae73a6 *qbsp_func_detail.bsp +6224e51aa5d697f79bc98971964916fc8abea4b87d809bb1aa9cf618bdd26493 *qbsp_func_detail_illusionary_plus_water.bsp +ff6481312cecce94f5702eef01e296d23b44cce0649a50a2c5ef88d18bd4d937 *e1m1-bsp29.bsp +ed6e532713ac624d046514d2dac54bb0d039298bcd5440c8024b17182d912365 *e1m1-bsp2.bsp +f5e6594ca62d9cb84463537d6c7fd688d9ed770820689e8ce116ebf4cd694e3c *e1m1-2psb.bsp +f9ec3608af2116ee0feca5cfac41f2052ad8881a094e2a274419f6ed35b974fd *e1m1-hexen2.bsp +2bbf7fc86a055fddcf98fbb160c790c5d09f504a45832792ee89b2d0846d28be *e1m1-hexen2-bsp2.bsp +529b542a6fb7e0874e84e815ed00ac9e90d9e8e1c4c46b4f6fa3114ca2da8fae *e1m1-hexen2-2psb.bsp +fe1ed71ea322fbdb4a94522410271afb53e8b11be95cd87d20622598bfd528e3 *e1m1-hlbsp.bsp +a0c244963bdf845beedc875cf3594045657d7f242f720e045e0fa3a8b031962a *e1m1-bspxbrushes.bsp +62fe5d3425b50d0d8d2b0adf781426af4ee4716152d3029b07391f3aca81c712 *e1m1-bsp29-onlyents.bsp +f8d672603bdf91c08fc37d8df7f6d51fc42b3258e94229b91896986a9c452704 *qbspfeatures.bsp abf3633d5a6d0e167ce9bacec476d3408c8240df5f3d72d14867cd201d4e3674 *qbsp_func_detail.prt c0995c6b92256fa048c1a755ebe7e07f5fae33cb64e3c53adc234380fe44f267 *qbsp_func_detail_illusionary_plus_water.prt 08349ab23c97120c41493d8fb00b9a6c41553aba64b1710ba11cc5bdfbe51e45 *e1m1-bsp29.prt diff --git a/testmaps/reference_bsp_json/qbsp_func_detail.bsp.json b/testmaps/reference_bsp_json/qbsp_func_detail.bsp.json index 770ed005..33f34b0e 100644 --- a/testmaps/reference_bsp_json/qbsp_func_detail.bsp.json +++ b/testmaps/reference_bsp_json/qbsp_func_detail.bsp.json @@ -889,7 +889,7 @@ 67 ] ], - "entdata": "{\n\"_tb_def\" \"builtin:Quoth2.fgd\"\n\"_wateralpha\" \"0.5\"\n\"wad\" \"deprecated/free_wad.wad;deprecated/fence.wad;deprecated/origin.wad;deprecated/hintskip.wad\"\n\"classname\" \"worldspawn\"\n\"mapversion\" \"220\"\n}\n{\n\"light\" \"3000\"\n\"origin\" \"72 -136 168\"\n\"classname\" \"light\"\n}\n{\n\"origin\" \"-88 -64 120\"\n\"classname\" \"info_player_start\"\n}\n\u0000", + "entdata": "{\n\"mapversion\" \"220\"\n\"classname\" \"worldspawn\"\n\"wad\" \"deprecated/free_wad.wad;deprecated/fence.wad;deprecated/origin.wad;deprecated/hintskip.wad\"\n\"_wateralpha\" \"0.5\"\n\"_tb_def\" \"builtin:Quoth2.fgd\"\n}\n{\n\"classname\" \"light\"\n\"origin\" \"72 -136 168\"\n\"light\" \"3000\"\n}\n{\n\"classname\" \"info_player_start\"\n\"origin\" \"-88 -64 120\"\n}\n\u0000", "faces": [ { "firstedge": 0, diff --git a/testmaps/reference_bsp_json/qbsp_func_detail_illusionary_plus_water.bsp.json b/testmaps/reference_bsp_json/qbsp_func_detail_illusionary_plus_water.bsp.json index 0c9b29e2..3a7090d7 100644 --- a/testmaps/reference_bsp_json/qbsp_func_detail_illusionary_plus_water.bsp.json +++ b/testmaps/reference_bsp_json/qbsp_func_detail_illusionary_plus_water.bsp.json @@ -347,7 +347,7 @@ 19 ] ], - "entdata": "{\n\"wad\" \"deprecated/fence.wad;deprecated/free_wad.wad\"\n\"classname\" \"worldspawn\"\n\"mapversion\" \"220\"\n}\n{\n\"light\" \"3000\"\n\"origin\" \"72 -136 168\"\n\"classname\" \"light\"\n}\n{\n\"origin\" \"-88 -64 120\"\n\"classname\" \"info_player_start\"\n}\n\u0000", + "entdata": "{\n\"mapversion\" \"220\"\n\"classname\" \"worldspawn\"\n\"wad\" \"deprecated/fence.wad;deprecated/free_wad.wad\"\n}\n{\n\"classname\" \"light\"\n\"origin\" \"72 -136 168\"\n\"light\" \"3000\"\n}\n{\n\"classname\" \"info_player_start\"\n\"origin\" \"-88 -64 120\"\n}\n\u0000", "faces": [ { "firstedge": 0,