From 0a6fabb079ae73fd3861be59258359527fe04d01 Mon Sep 17 00:00:00 2001 From: rambetter Date: Mon, 10 Jan 2011 01:45:52 +0000 Subject: [PATCH] Adding duplicate_plane regression test. git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/Rambetter-math-fix-experiments@413 8a3a26a2-13c4-0310-b231-cf6edde360e5 --- .../q3map2/duplicate_plane/README.txt | 13 +++ .../duplicate_plane/maps/duplicate_plane.map | 77 ++++++++++++++++++ .../radiant_regression_tests/tile.tga | Bin 0 -> 812 bytes 3 files changed, 90 insertions(+) create mode 100644 regression_tests/q3map2/duplicate_plane/README.txt create mode 100644 regression_tests/q3map2/duplicate_plane/maps/duplicate_plane.map create mode 100644 regression_tests/q3map2/duplicate_plane/textures/radiant_regression_tests/tile.tga diff --git a/regression_tests/q3map2/duplicate_plane/README.txt b/regression_tests/q3map2/duplicate_plane/README.txt new file mode 100644 index 0000000..8c2ef02 --- /dev/null +++ b/regression_tests/q3map2/duplicate_plane/README.txt @@ -0,0 +1,13 @@ +DESCRIPTION OF PROBLEM: +======================= + +The 4-sided brush in the middle of the room (brush 0) has a duplicate plane. +The last side (side 4) is a duplicate of the third side (side 2) with the +vertexes re-arranged. + +I wanted to make sure that ChopWindingInPlaceAccu() is doing the right thing +by setting a winding to NULL when all its points lie on the plane that the +winding is being chopped with. This seems to be the case. My concern was +that both windings for that duplicate plane will be NULL'ed out. + +Seems that some other code might be fixing duplicate planes. That's OK. diff --git a/regression_tests/q3map2/duplicate_plane/maps/duplicate_plane.map b/regression_tests/q3map2/duplicate_plane/maps/duplicate_plane.map new file mode 100644 index 0000000..029161a --- /dev/null +++ b/regression_tests/q3map2/duplicate_plane/maps/duplicate_plane.map @@ -0,0 +1,77 @@ +// entity 0 +{ +"classname" "worldspawn" +// brush 0 +{ +( 136 128 64 ) ( -128 128 64 ) ( -128 -192 64 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +( 136 128 384 ) ( -128 128 384 ) ( -128 128 0 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +( 128 -192 0 ) ( -128 128 0 ) ( 128 -192 384 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +( -128 128 256 ) ( 128 128 64 ) ( -128 -192 256 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +( 128 -192 384 ) ( 128 -192 0 ) ( -128 128 0 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +} +// brush 1 +{ +( 256 256 -8 ) ( -256 256 -8 ) ( -256 -256 -8 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 -256 0 ) ( -256 256 0 ) ( 256 256 0 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +( -256 -256 8 ) ( 256 -256 8 ) ( 256 -256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 -256 8 ) ( 256 256 8 ) ( 256 256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 256 8 ) ( -256 256 8 ) ( -256 256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 256 8 ) ( -256 -256 8 ) ( -256 -256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +} +// brush 2 +{ +( -256 256 0 ) ( -280 256 0 ) ( -280 -256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -280 -256 384 ) ( -280 256 384 ) ( -256 256 384 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -280 -256 384 ) ( -256 -256 384 ) ( -256 -256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 -256 384 ) ( -256 256 384 ) ( -256 256 0 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +( -256 256 384 ) ( -280 256 384 ) ( -280 256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -264 256 392 ) ( -264 -256 392 ) ( -264 -256 8 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +} +// brush 3 +{ +( 280 256 0 ) ( 256 256 0 ) ( 256 -256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 -256 384 ) ( 256 256 384 ) ( 280 256 384 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 -256 384 ) ( 280 -256 384 ) ( 280 -256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 264 -256 384 ) ( 264 256 384 ) ( 264 256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 280 256 384 ) ( 256 256 384 ) ( 256 256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 256 384 ) ( 256 -256 384 ) ( 256 -256 0 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +} +// brush 4 +{ +( 256 256 384 ) ( -256 256 384 ) ( -256 -256 384 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +( -248 -256 392 ) ( -248 256 392 ) ( 264 256 392 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 -256 424 ) ( 256 -256 424 ) ( 256 -256 384 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 -256 424 ) ( 256 256 424 ) ( 256 256 384 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 256 424 ) ( -256 256 424 ) ( -256 256 384 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 256 424 ) ( -256 -256 424 ) ( -256 -256 384 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +} +// brush 5 +{ +( 256 296 0 ) ( -256 296 0 ) ( -256 256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 256 384 ) ( -256 296 384 ) ( 256 296 384 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 256 384 ) ( 256 256 384 ) ( 256 256 0 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +( 256 256 384 ) ( 256 296 384 ) ( 256 296 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 264 392 ) ( -256 264 392 ) ( -256 264 8 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 296 384 ) ( -256 256 384 ) ( -256 256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +} +// brush 6 +{ +( 256 -256 0 ) ( -256 -256 0 ) ( -256 -296 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 -296 384 ) ( -256 -256 384 ) ( 256 -256 384 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( -256 -264 392 ) ( 256 -264 392 ) ( 256 -264 8 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 -296 384 ) ( 256 -256 384 ) ( 256 -256 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +( 256 -256 384 ) ( -256 -256 384 ) ( -256 -256 0 ) radiant_regression_tests/tile 0 0 0 0.500000 0.500000 0 0 0 +( -256 -256 384 ) ( -256 -296 384 ) ( -256 -296 0 ) common/caulk 0 0 0 0.500000 0.500000 0 4 0 +} +} +// entity 1 +{ +"origin" "-8 16 256" +"classname" "info_player_deathmatch" +} +// entity 2 +{ +"light" "1000" +"origin" "-32 -40 256" +"classname" "light" +} diff --git a/regression_tests/q3map2/duplicate_plane/textures/radiant_regression_tests/tile.tga b/regression_tests/q3map2/duplicate_plane/textures/radiant_regression_tests/tile.tga new file mode 100644 index 0000000000000000000000000000000000000000..2154015fc4c3cac9f1b6a3d8100faaa9075c1e5a GIT binary patch literal 812 zcmZQz;9`IQ2L=ZQ35Ndv|NqYi3W4Y$$p*T8KFIALKa8^J9}Yu2{Q#2;7=#3cx`ufM Qd;0t7M!0$Uxau(g0MliYy#N3J literal 0 HcmV?d00001