Eric Wasylishen
ebe157cb43
cleanup: get_hull_sizes(): use std::span instead of std::initializer_list
2025-02-04 19:55:39 -07:00
Eric Wasylishen
f930305695
common: surfflags_t: convert is_hint to function that checks for Q2_SURF_HINT
2025-02-01 16:04:08 -07:00
Eric Wasylishen
429921868a
common: surfflags_t: convert is_nodraw to function that checks for Q2_SURF_NODRAW
2025-02-01 15:53:37 -07:00
Eric Wasylishen
b8fdbe3d41
cleanup: don't pass contentflags_t by reference (it's only 8 bytes)
2024-11-17 21:23:09 -07:00
Eric Wasylishen
aa3b8479b4
qbsp: shrink node_t from 280 to 208 bytes
...
- contentflags_t from 80 to 8 bytes
2024-03-09 19:37:23 -07:00
Eric Wasylishen
6351cc50e6
rename: vec_t -> double
2023-12-23 21:09:16 -07:00
Jonathan
1eaf2170f8
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
...
# Conflicts:
# light/trace_embree.cc
2023-12-07 14:13:36 -05:00
Jonathan
9ed4f3d042
bunch of double -> float
...
fix Q2 animated textures
2023-12-07 14:11:46 -05:00
Eric Wasylishen
c77f4ba2dd
qbsp: fix misc_external_map + -wrbrushes
...
- fix world extents not including external maps
- thanks @DaZombieKiller for pointing this out
Fixes #372
2023-11-18 15:14:38 -07:00
Eric Wasylishen
7608a78b44
style: use std::min/std::max/std::clamp and remove using
2023-08-07 15:42:29 -06:00
Jonathan
19500bca0a
fix bounds checks only checking [0]
2023-07-21 00:21:58 -04:00
Jonathan
064e7980fd
allow --scale to take three parameters. negatives *kind of* work but won't work with lightgrid, etc.
2023-07-06 08:25:02 -04:00
Eric Wasylishen
18a7df1a1b
style: reformat
2023-05-07 21:44:29 -06:00
Jonathan
bd047020d2
fix antiportals up a bit
2023-04-29 13:40:34 -04:00
Jonathan
39a54abfc6
add support for a region brush (code needs to be cleaned up a bit though)
...
allow _surflight_style on brush models
2023-04-28 13:31:50 -04:00
Eric Wasylishen
50d97321d7
qbsp: add -bmodelcontents flag
2023-04-22 19:15:55 -06:00
Eric Wasylishen
096f347a12
qbsp: fix func_detail_fence/func_detail_wall with DETAIL set on brushes
2023-02-22 01:16:32 -07:00
Eric Wasylishen
eda6155844
cleanup: run ./clang-format-all.sh
...
clang-format version 15.0.7
2023-02-18 22:59:43 -07:00
Jonathan
c2acae8c6b
fix hint brushes
2023-02-06 21:58:53 -05:00
Eric Wasylishen
35fe26b7a6
qbsp: fix FindTargetEntity (was breaking hiprotate)
2022-12-19 00:55:20 -07:00
Eric Wasylishen
04adb17b1b
qbsp: fix -nodetail in q2 mode
2022-11-21 00:10:26 -07:00
Eric Wasylishen
12d82db8b1
qbsp: implement -omitdetail for q2
2022-11-20 23:58:30 -07:00
Eric Wasylishen
b81b52da5a
qbsp: fix nonsolid bmodels in hul1/2
2022-11-11 15:04:53 -07:00
Eric Wasylishen
93d059058f
testqbsp: fix mirrorinside + bmodels in Q1 mode
2022-11-11 12:33:47 -07:00
Eric Wasylishen
2bd2515792
all: cleanup unused includes (Clion - detect not directly used)
2022-10-31 21:37:34 -06:00
Eric Wasylishen
35ffc00462
all: add LIGHT_/QBSP_/VIS_ prefixes to epsilons where necessary
2022-10-30 15:08:10 -06:00
Eric Wasylishen
501ced4bfe
qbsp: restore func_detail_wall support
2022-10-21 18:33:38 -06:00
Eric Wasylishen
636b376577
squash brushbsp-compilation-speedup branch
...
move function implementations out of headers
2022-10-21 18:00:58 -06:00
Eric Wasylishen
2a9393cc54
bspbrush_t: add contains_point() query
2022-10-05 23:49:34 -06:00
Eric Wasylishen
acf334daee
cleanup: rename surfflags_t::is_skip to is_nodraw
...
This is a break to the .json format
2022-09-18 15:47:14 -06:00
Eric Wasylishen
09f0e2a0c5
qbsp: preserve brush side texinfo in collision hulls
...
17k -> 9.8k clipnodes on testmaps\retrojam1_ericw.map
setting the texinfo to 0 was defeating the bsp heuristic, because
texinfo 0 was marked as is_skip, which makes side_t::is_visible()
return false (which makes us not care about splitting those brush sides)
2022-09-17 21:46:02 -06:00
Eric Wasylishen
cea123f955
qbsp: Brush_LoadEntity: print source brush side stats (visible/invisible)
2022-09-17 20:27:21 -06:00
Eric Wasylishen
88a88882a9
qbsp: initialize 'visible' in CreateBrushWindings
2022-08-28 23:15:49 -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
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
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
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
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
a5557bc87d
Revert "remove the Q1 bevel stuff"
...
This reverts commit f5f80479a3 .
# Conflicts:
# qbsp/map.cc
2022-08-19 07:15:39 -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
f5f80479a3
remove the Q1 bevel stuff
2022-08-17 03:49:42 -04: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
83cf63e77f
revert using detail on hull1/2 for now as it's breaking tests
2022-08-15 21:17:17 -06: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
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