Jonathan
3564f6085d
merge surface lighting and bounce code (wip)
2022-08-30 15:46:14 -04:00
Eric Wasylishen
88a88882a9
qbsp: initialize 'visible' in CreateBrushWindings
2022-08-28 23:15:49 -06:00
Eric Wasylishen
3856dffc0a
qbsp: compilation speedup: isolate pareto in map.cc
2022-08-28 18:10:01 -06:00
Eric Wasylishen
7a3b4a3263
cmake: add ERICWTOOLS_TIMETRACE option
2022-08-28 17:44:42 -06:00
Eric Wasylishen
0f8387d740
gitignore: fix ignoring decompiled output
2022-08-28 17:44:12 -06:00
Eric Wasylishen
c8c526ab57
qbsp: fix mist-clip intersection chopping up the faces
...
note it makes the simple_worldspawn_detail clipnodes count
test fail. Clipnode counts are way too high in general so this isn't
a huge issue yet.
2022-08-28 14:13:14 -06:00
Jonathan
c99addc41a
fix fastbounce lights being darker on extra2/4
...
use a more dynamic gate for non-fastbounce (slower but allows them to contribute)
2022-08-28 02:25:08 -04:00
Eric Wasylishen
7df6310d32
qbsp: init brush sides to visible
...
improves the quality of the first BSP build
2022-08-27 23:36:58 -06:00
Eric Wasylishen
1ab6cc1e65
qbsp: fix iterator debug assertion in ChopBrushes
...
"cannot decrement begin list iterator"
2022-08-27 14:54:36 -06:00
Eric Wasylishen
2f7ca41638
bspfile: fix typo in deriving basedir from gamedir
2022-08-27 14:21:43 -06:00
Eric Wasylishen
d037b67be9
bspfile: log basedir and gamedir
2022-08-27 14:19:27 -06:00
Jonathan
34a7079b64
reverse the portals for leak lines in inside filling
2022-08-27 03:28:57 -04:00
Jonathan
b305ddaed9
port over the visible = true setting for hint sides
2022-08-25 21:45:33 -04:00
Jonathan
f581c071e8
fix merge
2022-08-25 19:02:26 -04:00
Jonathan
4a85131f45
fix sky_surface being multiplied by 255 twice (normalize it as a color first)
2022-08-25 16:47:10 -04:00
Jonathan
384f74a0eb
add separate "surflightskyscale" to handle the scale of sky lights; to help with doubling up with _sun
...
allow setSetting to report errors
print warnings on invalid worldspawn key values for light
fix setting_mangle not handling "pitch yaw" or "pitch" correctly
2022-08-25 16:30:15 -04:00
Jonathan
f27f16cebf
fix cherry pick error
2022-08-25 15:48:52 -04:00
Jonathan
5fb0d56da7
maxlight
...
# Conflicts:
# include/common/bspfile.hh
2022-08-24 21:50:11 -04:00
Jonathan
928b7f6e16
fix crashes with bounceextra/4
2022-08-24 12:03:05 -04:00
Jonathan
1ce5c5a7b1
combine flood + emit areaportals into a single step, since they won't ever be run not together
...
add stats for edges and faces
2022-08-24 12:02:56 -04:00
Jonathan
e14f42caba
emit edges and faces together instead of in two passes
2022-08-22 13:40:47 -04:00
Jonathan
f6601a7c85
clean up the output table for BSPs
...
add a specialized stream buffer which just tracks how much would be written to it; used to get the output size of the texture lump, since that's no longer tracked
display dmodel byte size
display BSPX lumps a bit differently (no need to repeat BSPX per line)
add header to both lists, to make it more obvious what's coming up
2022-08-22 13:02:58 -04:00
Jonathan
6345d6b616
add support for fast bounce lighting, which is the same as the old code
2022-08-21 22:12:41 -04:00
Jonathan
e7ae158a10
split up BrushBSP and CountLeafs stat prints
2022-08-21 21:54:16 -04:00
Jonathan
4eebbd0bdd
re-introduce qbsp3's "don't use clip brush sides as splitters"
2022-08-21 17:36:19 -04:00
Jonathan
fe41b1ae1b
fix format error for Q1 contents
...
re-introduce chop since it may be a key to the puzzle for hullnums
allow caller to do full fragmentation, add option to force it
fix BrushGE causing liquids, etc to be cut up
2022-08-21 16:16:09 -04:00
Jonathan
2d8827e031
Revert "Q3 didn't need chop, we don't either!"
...
This reverts commit f57ecaf599 .
# Conflicts:
# include/qbsp/brushbsp.hh
2022-08-21 15:04:26 -04:00
Jonathan
282c5ec69f
stat printing adjustments
2022-08-21 15:01:45 -04:00
Jonathan
1aaa513368
collapse certain map face issues into loggable warning stats to lessen maps spamming warnings on things that legacy compilers allow
...
adjust the wording of certain warning messages
don't display face crunching on bmodels/hulls by default
2022-08-20 20:13:27 -04:00
Jonathan
7fad0019c2
set omit properly
2022-08-20 15:09:47 -04:00
Jonathan
7422776f38
move _omitbrushes to the loading phase; this will greatly improve performance of loading a map with a ton of brushes that has most of them omitted.
2022-08-20 09:53:23 -04:00
Jonathan
bfe56b0663
fix the Q1 bevel code for testing later
2022-08-20 08:19:46 -04:00
Jonathan
39bbd643d5
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2022-08-20 08:14:43 -04:00
Jonathan
8a5ad5bc4d
simplify Brush_LoadEntity a bit by moving some of the contents setting to mapbrush loading; note that this causes a bit of issue with mirror_inside & clipsametype currently because of Q1 contents code. needs adjusting
2022-08-20 08:14:36 -04:00
Eric Wasylishen
d9856230a6
testqbsp: q1_rocks: sky -> solid to simplify test case
2022-08-20 01:24:10 -06:00
Eric Wasylishen
08e3254dae
brushbsp: track tree level for debugging
2022-08-20 00:52:24 -06:00
Eric Wasylishen
6b07e0c5f4
brushbsp: return split planes as side_t* for better debuggability
2022-08-20 00:51:52 -06:00
Eric Wasylishen
f3a2d99544
testqbsp: adjust q1_rocks test case
...
avoid potential ambiguity for BrushBSP over whether sky should split wall brushes
2022-08-20 00:22:21 -06:00
Eric Wasylishen
251a6dc7ca
testmaps: add a more minimal q1_rocks that's just a cube
2022-08-19 22:55:27 -06:00
Eric Wasylishen
648ffab77b
testqbsp: improve q1_rocks test
2022-08-19 22:10:16 -06:00
Eric Wasylishen
10051ceff5
testmaps: remove some accidental brushes in q1_hull_expansion_lip.map
...
testqbsp: more detailed q1_hull_expansion_lip tests for clipnodes
testqbsp: decompile hull1 of testmaps by default
testqbsp: corrections to the q1_hull_expansion_lip.map expectation
adjust gitignore
2022-08-19 20:49:59 -06:00
Eric Wasylishen
c0c146d47c
bsputil: move decompiler to common
2022-08-19 20:49:34 -06:00
Jonathan
e020cd6be6
comment out the hintskip face removal; this seems to break later processes. qbsp3 doesn't do this..
2022-08-19 16:09:37 -04:00
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