Jonathan
48c6b7a370
decouple extra and bounce extra; this allows you to still use extra4 but not have to wait like 16x longer for bounce lights to work
2022-08-18 07:35:06 -04:00
Jonathan
424e3ee110
remove unused portal_t::face, unused
...
rename and re-type a few things to use twosided
2022-08-17 09:10:58 -04:00
Jonathan
9e764d8035
document some stuff
...
remove mapface_t::value and mapface_t::flags; they are duplicated by texinfo
add mapface_t::get_texinfo and face_t::get_texinfo so that you can fetch them easier
2022-08-17 07:30:31 -04:00
Jonathan
a2d6b63533
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
...
# Conflicts:
# qbsp/brush.cc
# qbsp/map.cc
2022-08-17 03:50:52 -04:00
Jonathan
f5f80479a3
remove the Q1 bevel stuff
2022-08-17 03:49:42 -04:00
Eric Wasylishen
fe43928802
fix build (unwanted static on TestExpandBrushes)
2022-08-17 01:18:11 -06:00
Eric Wasylishen
a2a7b987bc
revert last commit, q1 code is still producing better results with q1_rocks.map
2022-08-17 01:17:19 -06:00
Eric Wasylishen
688a033288
qbsp: switch back to qbsp3 brush bevels in q1 mode
...
now that the bug in the previous commit is fixed
2022-08-16 23:15:09 -06:00
Eric Wasylishen
6b1720e095
qbsp: fix bug from qbsp3's AddBrushBevels where edge bevels are wrongly rejected
...
fixes bad result in q1_hull_expansion_lip.map
2022-08-16 23:11:43 -06:00
Eric Wasylishen
4801e87b1c
testqbsp: don't allow q1_hull_expansion_lip to fail
2022-08-16 23:05:17 -06:00
Jonathan
95c728a5b6
fix legacy bevel bug
...
pushing up changes for Q1 hulls just in case we ever want these back
2022-08-16 13:52:30 -04:00
Jonathan
0c90a33f28
enable Q1-style hull expansion; these expanded brushes seem to look better. hopefully we can figure out a way to backport & optimize this code for mapbrush_t, but for now it's only used in Q1 hull expansions
2022-08-16 05:33:38 -04:00
Eric Wasylishen
f62136e04d
qbsp: wip fixing -expand feature
2022-08-16 01:36:09 -06:00
Eric Wasylishen
cad5b3ccf3
testqbsp: add failing hull expansion test
2022-08-16 00:43:40 -06:00
Eric Wasylishen
8ce72efba2
testmaps: add q1_hull_expansion_lip.map
...
which is getting incorrectly expanded
2022-08-16 00:35:47 -06:00
Eric Wasylishen
9ef3de4dbe
bsputil: "--decompile-hull n" for decompiling hulls
2022-08-15 23:18:17 -06:00
Eric Wasylishen
f5a8bc7b99
bsputils: add a helper struct for checking clipnode identity
2022-08-15 23:06:00 -06:00
Eric Wasylishen
2cc97c2519
testqbsp: start q1_rocks test case
2022-08-15 22:23:52 -06:00
Eric Wasylishen
83cf63e77f
revert using detail on hull1/2 for now as it's breaking tests
2022-08-15 21:17:17 -06:00
Eric Wasylishen
41f765376f
testqbsp: adjust test expectations now that we're inside filling hull1/2
2022-08-15 21:16:53 -06:00
Jonathan
92fdff1222
FreeTreePortals call missing
...
allow decompiling hulls (not hooked up to console yet)
2022-08-15 12:23:09 -04:00
Jonathan
027c45d608
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2022-08-15 06:13:38 -04:00
Jonathan
f7b8f85ece
use an optional<uint8_t> to store hull number, which gets rid of special -1 collision hull number.
...
fixed no-hull always chopping even with chop off
2022-08-15 06:13:30 -04:00
Jonathan
20f5d73a3c
always use inside filling for auto
...
allow details in hulls
use std::optional for an optional-esque value
2022-08-15 04:53:36 -04:00
Jonathan
97665d15a9
fix slight mistype in Brush_LoadEntity
...
make ~settings_container virtual so light_t can be freed properly
reset visible to false on all brush sides
2022-08-15 03:37:38 -04:00
Eric Wasylishen
d88bedd153
testqbsp: add q1_rocks.map test with obj2map style brushes
2022-08-15 01:07:47 -06:00
Eric Wasylishen
c2be045f65
qbsp: add WriteDebugTreePortalFile
2022-08-15 00:34:18 -06:00
Eric Wasylishen
244399b6f7
testqbsp: make q1_hull1_content_types seal in hull1/2
2022-08-14 21:40:49 -06:00
Eric Wasylishen
0642ad16d3
testqbsp: start a hull1 content type test
2022-08-14 18:14:56 -06:00
Eric Wasylishen
35859a6ea4
tests: add q1_wad_mapname test
2022-08-14 13:45:31 -06:00
Eric Wasylishen
854e1f48f5
qbsp: rewrite/fix hull and bmodel logging with new -loghulls and -logbmodels flags
2022-08-14 12:40:42 -06:00
Jonathan
2fe8ef2182
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2022-08-14 07:33:49 -04:00
Jonathan
781a772d8a
move immediately instead of splicing after construction (probably compiles to the same code but whatever)
...
don't add all of the `result_portals_onnode` one at a time; just directly copy-elision the result.
2022-08-14 07:33:41 -04:00
Eric Wasylishen
e7adc1108a
qbsp: reset more settings between test cases
2022-08-13 20:38:57 -06:00
Eric Wasylishen
995ac04673
tests: add a few clipnode count tests
...
adjust qbsp_simple_worldspawn_detail.map so it seals in hull1/2
2022-08-13 20:11:22 -06:00
Jonathan
de7c8b42b4
fix hybrid at()
2022-08-13 20:57:58 -04:00
Jonathan
3c44eb58e7
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2022-08-13 20:31:02 -04:00
Jonathan
40b04b9518
use alloca instead of thread-local static
2022-08-13 20:30:51 -04:00
Eric Wasylishen
46ee6eb932
ci: switch from macos-10.15 to macos-11
2022-08-13 13:51:37 -06:00
Eric Wasylishen
9baf161fc0
work around macos bug (std::atomic_size_t::value_type missing)
2022-08-13 13:12:23 -06:00
Eric Wasylishen
1844f0810f
fix linux build
2022-08-13 12:40:11 -06:00
Jonathan
da5b40ce73
since buildportal_t is small and being stored in an std::list (which already stores them in nodes that require allocation & non-moving locations) we don't need to wrap them in unique_ptr; this saves a malloc/free per buildportal_t
2022-08-13 08:24:13 -04:00
Jonathan
2059835a47
use a more optimized version of SplitBrush for CheckPlaneAgainstVolume that doesn't require allocating/freeing a lot of memory
2022-08-13 06:39:30 -04:00
Jonathan
6d66e6d5cf
group together # of clipped faces, to reduce console spam of Q1 maps
...
always allow midplane split for hulls
2022-08-12 21:38:41 -04:00
Jonathan
e7647f5ca7
fix decompile
2022-08-12 20:12:35 -04:00
Eric Wasylishen
06a116670b
winding_t: make non-copyable
2022-08-12 02:06:23 -06:00
Jonathan
8b9c1bd784
fix missing includes
2022-08-12 02:42:52 -04:00
Jonathan
ea38e5eeb7
fix missing move
...
fix clip_back causing extra copies
2022-08-12 02:03:00 -04:00
Jonathan
bf162c7a86
allow explicit calling of percent_clock so it can be simplified a bit
...
add more timers in a few spots
by default, display percent timers but don't display elapsed for non-verbose stuff (bmodels); this is so it still shows that it's "working" instead of just showing blank for large maps, give user an idea on progress for certain stuff
merge all "side not found"s into a single line
time `FillOutside`
time `ProcessMapBrushes`
time `Brush_LoadEntity`
2022-08-12 01:30:04 -04:00
Jonathan
4bf2ab338c
allowing logging::percent to handle indeterminate values
...
fix logging::percent getting stomped in multi-threaded operations
add new stats facility to make creating lists of single-use stats easier to manage
fix SplitBrush storing a bunch of extra stats for ChopBrushes
2022-08-11 20:33:12 -04:00