testmaps: add q1_tjunc_angled_face
This commit is contained in:
parent
d30d4000bc
commit
7f955a5247
|
|
@ -0,0 +1,102 @@
|
|||
// Game: Quake
|
||||
// Format: Standard
|
||||
// entity 0
|
||||
{
|
||||
"classname" "worldspawn"
|
||||
"wad" "deprecated/free_wad.wad;deprecated/hintskip.wad"
|
||||
// brush 0
|
||||
{
|
||||
( -304 32 16 ) ( -304 256 16 ) ( -304 32 192 ) bolt9 0 0 0 1 1
|
||||
( -304 32 192 ) ( -288 32 192 ) ( -304 32 16 ) bolt9 0 0 0 1 1
|
||||
( -304 32 16 ) ( -288 32 16 ) ( -304 256 16 ) bolt9 0 0 0 1 1
|
||||
( -304 256 192 ) ( -288 256 192 ) ( -304 32 192 ) bolt9 0 0 0 1 1
|
||||
( -304 256 16 ) ( -288 256 16 ) ( -304 256 192 ) bolt9 0 0 0 1 1
|
||||
( -288 32 16 ) ( -288 32 192 ) ( -288 256 16 ) bolt9 0 0 0 1 1
|
||||
}
|
||||
// brush 1
|
||||
{
|
||||
( -288 256 192 ) ( -288 240 192 ) ( -288 256 16 ) bolt9 0 0 0 1 1
|
||||
( -64 240 192 ) ( -64 240 16 ) ( -288 240 192 ) bolt9 0 0 0 1 1
|
||||
( -288 256 16 ) ( -288 240 16 ) ( -64 256 16 ) bolt9 0 0 0 1 1
|
||||
( -64 256 192 ) ( -64 240 192 ) ( -288 256 192 ) bolt9 0 0 0 1 1
|
||||
( -64 256 192 ) ( -288 256 192 ) ( -64 256 16 ) bolt9 0 0 0 1 1
|
||||
( 224 256 16 ) ( 224 240 16 ) ( 224 256 192 ) bolt9 0 0 0 1 1
|
||||
}
|
||||
// brush 2
|
||||
{
|
||||
( -288 32 16 ) ( -288 48 16 ) ( -288 32 192 ) bolt9 0 0 0 1 1
|
||||
( -64 32 16 ) ( -288 32 16 ) ( -64 32 192 ) bolt9 0 0 0 1 1
|
||||
( -64 32 16 ) ( -64 48 16 ) ( -288 32 16 ) bolt9 0 0 0 1 1
|
||||
( -288 32 192 ) ( -288 48 192 ) ( -64 32 192 ) bolt9 0 0 0 1 1
|
||||
( -288 48 16 ) ( -64 48 16 ) ( -288 48 192 ) bolt9 0 0 0 1 1
|
||||
( 224 32 192 ) ( 224 48 192 ) ( 224 32 16 ) bolt9 0 0 0 1 1
|
||||
}
|
||||
// brush 3
|
||||
{
|
||||
( -288 48 192 ) ( -288 48 176 ) ( -288 240 192 ) bolt9 0 0 0 1 1
|
||||
( -64 48 192 ) ( -64 48 176 ) ( -288 48 192 ) bolt9 0 0 0 1 1
|
||||
( -64 240 176 ) ( -288 240 176 ) ( -64 48 176 ) bolt9 0 0 0 1 1
|
||||
( -64 240 192 ) ( -64 48 192 ) ( -288 240 192 ) bolt9 0 0 0 1 1
|
||||
( -288 240 192 ) ( -288 240 176 ) ( -64 240 192 ) bolt9 0 0 0 1 1
|
||||
( 224 240 192 ) ( 224 240 176 ) ( 224 48 192 ) bolt9 0 0 0 1 1
|
||||
}
|
||||
// brush 4
|
||||
{
|
||||
( -288 240 16 ) ( -288 240 32 ) ( -288 48 16 ) bolt9 0 0 0 1 1
|
||||
( -288 48 16 ) ( -288 48 32 ) ( -64 48 16 ) bolt9 0 0 0 1 1
|
||||
( -288 240 16 ) ( -288 48 16 ) ( -64 240 16 ) bolt9 0 0 0 1 1
|
||||
( -288 48 32 ) ( -288 240 32 ) ( -64 48 32 ) bolt9 0 0 0 1 1
|
||||
( -64 240 16 ) ( -64 240 32 ) ( -288 240 16 ) bolt9 0 0 0 1 1
|
||||
( 224 48 16 ) ( 224 48 32 ) ( 224 240 16 ) bolt9 0 0 0 1 1
|
||||
}
|
||||
// brush 5
|
||||
{
|
||||
( 208 48 32 ) ( 208 49 32 ) ( 208 48 33 ) bolt9 0 0 0 1 1
|
||||
( 208 48 32 ) ( 208 48 33 ) ( 209 48 32 ) bolt9 0 0 0 1 1
|
||||
( 208 48 32 ) ( 209 48 32 ) ( 208 49 32 ) bolt9 0 0 0 1 1
|
||||
( 224 240 192 ) ( 224 241 192 ) ( 225 240 192 ) bolt9 0 0 0 1 1
|
||||
( 224 240 40 ) ( 225 240 40 ) ( 224 240 41 ) bolt9 0 0 0 1 1
|
||||
( 224 240 40 ) ( 224 240 41 ) ( 224 241 40 ) bolt9 0 0 0 1 1
|
||||
}
|
||||
}
|
||||
// entity 1
|
||||
{
|
||||
"classname" "info_player_start"
|
||||
"origin" "-240 80 56"
|
||||
}
|
||||
// entity 2
|
||||
{
|
||||
"classname" "light"
|
||||
"origin" "-24 136 88"
|
||||
}
|
||||
// entity 3
|
||||
{
|
||||
"classname" "func_detail_illusionary"
|
||||
// brush 0
|
||||
{
|
||||
( -188.10813251266572 218.17443700772375 29.189087697669024 ) ( -188.08344933943835 219.1400896531907 29.44774907720233 ) ( -188.15085495684698 217.91695210157323 30.154425108043164 ) skip -2.6057358 -15.070322 14.995332 3.9987814 3.99635
|
||||
( 128.47925076604355 201.86505104409426 121.722501544933 ) ( 128.5039339392709 202.83070368956123 121.98116292446629 ) ( 129.47803279117343 201.8301728072222 121.75740104163549 ) skip 1.6292086 -2.6000519 358.00003 3.9975634 3.8642104
|
||||
( -188.10813251266572 218.17443700772375 29.189087697669024 ) ( -188.15085495684698 217.91695210157323 30.154425108043164 ) ( -187.1093504875358 218.1395587708517 29.223987194371524 ) bolt6 -1.1053715 1.2317715 1.9999777 4.002436 3.869836
|
||||
( 131.21348719364374 218.344085037727 59.94090728098833 ) ( 132.21226921877363 218.30920680085495 59.97580677769082 ) ( 131.17076474946248 218.08660013157652 60.90624469136245 ) skip -1.24013 2.297655 1.9999777 4.002436 3.869836
|
||||
( -189.4752507264658 209.93492001090735 60.079884829641365 ) ( -188.4764687013359 209.9000417740353 60.11478432634385 ) ( -189.45056755323844 210.90057265637432 60.33854620917466 ) skip 1.224124 0.61686707 358.00003 3.9975634 3.8642104
|
||||
( 131.21348719364374 218.344085037727 59.94090728098833 ) ( 131.17076474946248 218.08660013157652 60.90624469136245 ) ( 131.2381703668711 219.309737683194 60.199568660521635 ) skip -0.63228226 -11.648362 14.995332 3.9987814 3.99635
|
||||
}
|
||||
// brush 1
|
||||
{
|
||||
( -191.13099727552836 213.0260868431543 110.55466260013269 ) ( -193.97153613950366 169.7659266929867 148.61369415302556 ) ( -194.36646691114126 154.31548436551515 144.47511208049275 ) skip -2.6183968 -15.070335 14.995332 3.9987814 3.99635
|
||||
( -193.97153613950366 169.7659266929867 148.61369415302556 ) ( -66.12743692287489 165.3015123733627 153.08082973094565 ) ( -66.5223676945125 149.85107004589113 148.9422476584129 ) skip 1.9767227 -5.8202477 358.00003 3.9975634 3.8642104
|
||||
( -191.13099727552836 213.0260868431543 110.55466260013269 ) ( -63.28689805889961 208.5616725235303 115.0217981780528 ) ( -66.12743692287489 165.3015123733627 153.08082973094565 ) skip 1.8283157 -21.069065 358.00003 3.9975634 -3.616177
|
||||
( -66.5223676945125 149.85107004589113 148.9422476584129 ) ( -63.681828830537185 193.11123019605878 110.88321610551998 ) ( -191.52592804716593 197.5756445156828 106.41608052759985 ) bolt9 0 0 0 1 1
|
||||
( -63.681828830537185 193.11123019605878 110.88321610551998 ) ( -63.28689805889961 208.5616725235303 115.0217981780528 ) ( -191.13099727552836 213.0260868431543 110.55466260013269 ) skip 1.6438179 -2.5995102 358.00003 3.9975634 3.8642104
|
||||
( -66.12743692287489 165.3015123733627 153.08082973094565 ) ( -63.28689805889961 208.5616725235303 115.0217981780528 ) ( -63.681828830537185 193.11123019605878 110.88321610551998 ) skip -1.8290176 -13.701551 14.995332 3.9987814 3.99635
|
||||
}
|
||||
// brush 2
|
||||
{
|
||||
( -63.28689805889961 208.5616725235303 115.0217981780528 ) ( -66.12743692287489 165.3015123733627 153.08082973094565 ) ( -66.5223676945125 149.85107004589113 148.9422476584129 ) skip -1.8290176 -13.701551 14.995332 3.9987814 3.99635
|
||||
( -66.12743692287489 165.3015123733627 153.08082973094565 ) ( 125.63871190206825 158.60489089392667 159.7815330978258 ) ( 125.24378113043065 143.1544485664551 155.6429510252931 ) skip 1.9523721 -5.821148 358.00003 3.9975634 3.8642104
|
||||
( -63.28689805889961 208.5616725235303 115.0217981780528 ) ( 128.47925076604355 201.86505104409426 121.722501544933 ) ( 125.63871190206825 158.60489089392667 159.7815330978258 ) skip 1.8039656 -21.068104 358.00003 3.9975634 -3.616177
|
||||
( 125.24378113043065 143.1544485664551 155.6429510252931 ) ( 128.08431999440594 186.41460871662275 117.58391947240015 ) ( -63.681828830537185 193.11123019605878 110.88321610551998 ) bolt8 1.7678752 -16.791702 358.00003 3.9975634 -3.616177
|
||||
( 128.08431999440594 186.41460871662275 117.58391947240015 ) ( 128.47925076604355 201.86505104409426 121.722501544933 ) ( -63.28689805889961 208.5616725235303 115.0217981780528 ) skip 1.6194682 -2.6004105 358.00003 3.9975634 3.8642104
|
||||
( 125.63871190206825 158.60489089392667 159.7815330978258 ) ( 128.47925076604355 201.86505104409426 121.722501544933 ) ( 128.08431999440594 186.41460871662275 117.58391947240015 ) skip -0.64494705 -11.648375 14.995332 3.9987814 3.99635
|
||||
}
|
||||
}
|
||||
|
|
@ -314,6 +314,17 @@ static std::vector<std::string> TexNames(const mbsp_t &bsp, std::vector<const mf
|
|||
return result;
|
||||
}
|
||||
|
||||
static std::vector<const mface_t *> FacesWithTextureName(const mbsp_t &bsp, const std::string &name)
|
||||
{
|
||||
std::vector<const mface_t *> result;
|
||||
for (auto &face : bsp.dfaces) {
|
||||
if (Face_TextureName(&bsp, &face) == name) {
|
||||
result.push_back(&face);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
// https://github.com/ericwa/ericw-tools/issues/158
|
||||
TEST_CASE("testTextureIssue", "[qbsp]")
|
||||
{
|
||||
|
|
@ -915,6 +926,18 @@ TEST_CASE("tjunc_many_sided_face", "[testmaps_q1][!mayfail]")
|
|||
CHECK(2 == (faces_by_normal.at({0, 0, -1}).size()));
|
||||
}
|
||||
|
||||
TEST_CASE("tjunc_angled_face", "[testmaps_q1]")
|
||||
{
|
||||
const auto [bsp, bspx, prt] = LoadTestmapQ1("q1_tjunc_angled_face.map");
|
||||
CheckFilled(bsp);
|
||||
|
||||
auto faces = FacesWithTextureName(bsp, "bolt6");
|
||||
REQUIRE(faces.size() == 1);
|
||||
|
||||
auto *bolt6_face = faces.at(0);
|
||||
CHECK(bolt6_face->numedges == 5);
|
||||
}
|
||||
|
||||
/**
|
||||
* Because it comes second, the sbutt2 brush should "win" in clipping against the floor,
|
||||
* in both a worldspawn test case, as well as a func_wall.
|
||||
|
|
|
|||
Loading…
Reference in New Issue