Jonathan
84870cf366
since tree_t only exists as a type that only allocates heap memory, we don't need to wrap it in a unique_ptr; this also allows the vectors to keep their memory on the next pass, which may improve performance for huge maps
...
removed tree_t parameter from functions that don't need it
pass reference to tree_t instead of ptr
use an enum instead of std::optional<bool> for the ternary value to store split type, since it's more explicit and obvious now what the three values do
2022-08-19 15:15:53 -04:00
Jonathan
69aad26097
move & document bevel boolean
...
don't report invalid winding more than once
ceil the extents, so we don't get weird values like "world extents calculated to 5082.29327318318"
2022-08-19 13:46:37 -04:00
Jonathan
057ae544c4
use references in places where we know it's non-null
2022-08-19 12:11:35 -04:00
Jonathan
39475e3213
use on_epsilon instead of 0.1, to match Q1
2022-08-19 09:44:11 -04:00
Jonathan
0c4888d5d1
remove leftover debug code
2022-08-19 09:42:11 -04:00
Jonathan
9596855c62
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2022-08-19 07:15:51 -04:00
Jonathan
a5557bc87d
Revert "remove the Q1 bevel stuff"
...
This reverts commit f5f80479a3 .
# Conflicts:
# qbsp/map.cc
2022-08-19 07:15:39 -04:00
Eric Wasylishen
832ab0ee94
testqbsp: q1_hull_expansion_lip.map: move detail to world as a temp workaround
...
for -debugexpand only expanding world brushes
2022-08-19 01:14:38 -06:00
Eric Wasylishen
6eab754ca3
qbsp: reset onnode at the beginning of BrushBSP
2022-08-18 22:26:33 -06:00
Jonathan
f57ecaf599
Q3 didn't need chop, we don't either!
2022-08-18 19:47:34 -04:00
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