Jonathan
aa70d6dc00
draw lines and portals
...
disable leakdist by default
2023-07-09 15:44:23 -04:00
Random
2637a5fb65
-notex should now work ( #365 )
2023-07-08 15:55:34 -06:00
Eric Wasylishen
9760f5b8da
qbsp: fix detection of areaportal leaks (FindAreaPortalExits_R was aborting the search for "exits" early)
2023-07-06 22:37:28 -06:00
Jonathan
9898eab474
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2023-07-06 08:25:11 -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
7691706bda
build: only use <fmt/core.h>, other headers have a heavy compilation time impact
2023-07-02 17:08:14 -06:00
Eric Wasylishen
5616fd97f4
common: use compile-time format string checking
2023-06-26 01:19:54 -06:00
Jonathan
11d73b71d8
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2023-06-26 00:50:15 -04:00
Jonathan
93da0c9905
add the ability to specify a chop order; this is to help with "nested" func_groups and layers, since TB makes them an implicit object at random spots in the BSP. Now you can be sure your objects will chop in the right order.
2023-06-26 00:50:08 -04:00
Eric Wasylishen
fbea58d679
code formatting pass
2023-06-25 18:29:48 -06:00
Jonathan
be8ae00fa6
fix so that the brush list has no dupes and is sequential again
2023-06-21 07:48:57 -04:00
Jonathan
2b22e35669
make sure world brush entities are in BSPX wrbrushes
2023-06-20 19:36:05 -04:00
Jonathan
06d48e6822
fix areaportal issue
2023-06-14 02:50:23 -04:00
Jonathan
d36e2f5114
--scale option for BSPUtil to do a post-process scale
2023-06-12 15:23:47 -04:00
Eric Wasylishen
9c6f6c2589
common: change FError to throw an exception
2023-06-03 22:24:20 -06:00
Eric Wasylishen
d38ef2d8af
qbsp: allow _litwater/_splitturb as a bmodel key
...
supports both opt-in and opt-out
2023-05-28 23:44:57 -06:00
Eric Wasylishen
f6d5e6e24d
qbsp: fix test failure in last commit (stale pointers in map.hashedges)
2023-05-28 16:51:20 -06:00
Eric Wasylishen
731bafd9fe
qbsp: fix edge reuse causing software renderer artifacts with liquids
...
fixes q1_liquid_software.map in tyrquake
thanks to Mankrip for reporting this
2023-05-28 16:28:33 -06:00
Eric Wasylishen
ed7a684583
qbsp: remove dead code contents_are_mirrored()
2023-05-28 11:43:30 -06:00
Eric Wasylishen
fa890456f6
qbsp: don't merge faces across sky boundaries
2023-05-27 23:42:33 -06:00
Eric Wasylishen
2703761edb
bsputil: fix --extract-textures writing in text mode
...
also correction to .prt writing, always use text mode
2023-05-27 16:56:07 -06:00
Jonathan
9d57f6dae7
fix region texture names getting picked up by accident
2023-05-23 17:54:20 -04:00
Eric Wasylishen
261d6da37d
qbsp: revert b994bb7 "disable CheckPlaneAgainstVolume checks"
...
it was causing leaks through solids
2023-05-22 23:01:07 -06:00
Eric Wasylishen
752cd95c02
qbsp: -debugexpand: write to .bsp output dir
2023-05-20 21:17:14 -06:00
Random
c6ea63ba95
made CMake relative for use as a sub-project within other CMake projects ( #356 )
2023-05-10 19:45:51 -06:00
Jonathan
0ab3aae111
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
...
# Conflicts:
# common/bspfile.cc
2023-05-08 17:47:12 -04:00
Jonathan
1548f25daf
allow individual brush chop control
...
allow passing _surflight_targetname to set targetnames for switchable lights on bmodels
2023-05-08 17:44:32 -04:00
Eric Wasylishen
d9e16a943a
qbsp: add -noextendedsurfflags flag to suppress .texinfo writing (for testing/debugging)
2023-05-07 23:56:30 -06:00
Eric Wasylishen
18a7df1a1b
style: reformat
2023-05-07 21:44:29 -06:00
Eric Wasylishen
3e446e6ea6
qbsp, light: fix inheriting minlight from worldspawn
...
Update q2_light_group.map to support this
2023-05-07 21:44:29 -06:00
Eric Wasylishen
b994bb750d
brushbsp: disable CheckPlaneAgainstVolume checks
...
this check prevents splitting on small brush fragments, where we actually need to split.
if we don't the small fragments cause incorrect leaf contents to be assigned.
2023-05-05 23:07:16 -06:00
Eric Wasylishen
5d142e4ab2
qbsp: remove -contenthack (dead code)
2023-05-01 22:38:00 -06:00
Eric Wasylishen
0628f768e2
qbsp: minor clarification in SplitBrush
2023-04-29 12:26:48 -06:00
Jonathan
bd047020d2
fix antiportals up a bit
2023-04-29 13:40:34 -04:00
Jonathan
5777fdf914
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2023-04-28 13:32:00 -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
537bc3686d
qbsp: experimental -scale flag for applying uniform scale to map
2023-04-25 18:41:21 -06:00
Jonathan
6035290c70
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
...
# Conflicts:
# include/common/imglib.hh
# light/entities.cc
# light/light.cc
# light/surflight.cc
2023-04-24 02:19:04 -04:00
Jonathan
dddc48e98b
simplify `needs_write` for surfflags
...
add `_surflight_color` key; allows overriding surface light color on an entity basis
load the .wal from wal_json and use the values as a base, if they exist
allow `_surflight_minlight_scale` to be specified on entities
2023-04-24 02:16:39 -04:00
Eric Wasylishen
50d97321d7
qbsp: add -bmodelcontents flag
2023-04-22 19:15:55 -06:00
Eric Wasylishen
a2d89e3307
qbsp: q1: fix visportals being created to solid leafs
...
fixes crash on ej3_cc.map
2023-04-17 23:42:00 -06:00
Eric Wasylishen
ed756bd602
common: add support for writing .rst documentation from settings
2023-04-16 14:55:43 -06:00
Eric Wasylishen
e069d7b9b8
style: update settings api to follow current coding style
2023-04-16 11:55:38 -06:00
Eric Wasylishen
8d368060eb
qbsp: sealing: in hull1/2 treat onnode point entities as being in empty space
2023-04-07 17:06:56 -06:00
Jonathan
00bcead0fb
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2023-04-03 05:26:49 -04:00
Jonathan
a0e98242a4
fix hintskip; when loading a hint brush, mark all other sides as hintskip
2023-04-03 05:26:41 -04:00
Eric Wasylishen
68eaf37e40
qbsp: q1: fix detail to be non-sealing again
2023-03-27 21:43:54 -06:00
Eric Wasylishen
8830a949e6
qbsp: only print "doesn't touch two areas" once per entity
...
log source location as well
2023-03-27 20:15:19 -06:00
Eric Wasylishen
2a2bc5d966
qbsp: clean up debug spam from DebugAreaPortalBothSidesLeak
2023-03-27 20:09:01 -06:00
Eric Wasylishen
4569ab1b33
qbsp: delete leftover areaportal leak files on startup
2023-03-27 20:05:33 -06:00
Jonathan
d067630bc1
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2023-03-27 03:23:19 -04:00
Eric Wasylishen
d7db2bdae5
qbsp: debug helper for finding areaportal leaks
2023-03-27 01:20:53 -06:00
Eric Wasylishen
f12cefb2c9
qbsp: if Q2_CONTENTS_SOLID bit is set, always assign invalid area
2023-03-26 19:02:25 -06:00
Jonathan
0bab917dc4
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2023-03-26 20:24:51 -04:00
Eric Wasylishen
759811b548
qbsp: fix Portal_EntityFlood check
2023-03-26 18:04:06 -06:00
Jonathan
1dcfe58563
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2023-03-26 18:29:41 -04:00
Jonathan
5daaeee6fb
allow `surflight_minlight_scale` to be specified per brush
2023-03-26 18:29:37 -04:00
Eric Wasylishen
6e064ae3c7
qbsp: restore detail to non-sealing
2023-03-26 16:20:10 -06:00
Eric Wasylishen
3c408f5d30
qbsp: better debug visualization for "missing portal sides" warning
...
writes a .missing_portal_sides.prt file for inspection in TB
2023-03-26 14:09:54 -06:00
Eric Wasylishen
7b7cabaf09
qbsp: don't merge above- and below- water faces in Q1 mode
...
works around caustics effects in ezQuake/nQuake leaking onto above-water faces.
2023-03-13 23:50:32 -06:00
Eric Wasylishen
41a4375376
qbsp: q2: reject DEADMONSTER and MONSTER in input brushes
...
we currently (hackily) use MONSTER as detail_wall internally (this will likely change later though.)
In any case these are invalid in input maps.
2023-03-12 23:39:25 -06:00
Eric Wasylishen
7ed36c9bec
qbsp: reject Q2 maps with mixed visible contents
2023-03-07 22:12:22 -07:00
Jonathan
1091183293
fix infinite loop if a texture is missing in the animation chain
2023-03-03 16:48:25 -05:00
Eric Wasylishen
06f2363902
qbsp: work around 45 degree plane issue in FindPortalSide
2023-03-01 21:09:15 -07:00
Eric Wasylishen
8130843fb3
qbsp: search for wad's relative to cwd
2023-02-26 23:27:38 -07:00
Eric Wasylishen
ac3937300b
qbsp: safer condition in last commit
2023-02-23 19:15:07 -07:00
Eric Wasylishen
ce030f53be
qbsp: fix func_detail_wall deleting merged faces
2023-02-23 19:08:35 -07:00
Eric Wasylishen
1c22f45b47
qbsp: avoid tjunc interaction between func_detail_wall and worldspawn
2023-02-22 23:12:40 -07:00
Eric Wasylishen
42da494707
qbsp: face_t: track front/back contents, instead of just front
2023-02-22 22:54:37 -07:00
Eric Wasylishen
d8b903823a
qbsp: create a tjunc.hh header
...
make some tjunc.cc functions static that weren't
2023-02-22 18:07:49 -07: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
60dea4af4c
qbsp: fix func_detail_wall in q2 mode
2023-02-22 00:57:31 -07:00
Eric Wasylishen
b17633f746
cleanup: set PackConstructorInitializers: Never
2023-02-20 10:23:59 -07:00
Eric Wasylishen
dd6e49c89f
light: support _object_channel_mask on func_group
2023-02-20 00:07:08 -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
Eric Wasylishen
7d6ed20dc1
unused includes cleanup
2023-02-18 16:14:11 -07:00
Eric Wasylishen
641fb780ac
light: allow customizing _world_units_per_luxel on func_group etc.
2023-02-17 00:07:43 -07:00
Jonathan
72a0a92d3a
fix area assertion/test failure
2023-02-13 20:41:11 -05:00
Jonathan
dd75cdf3e3
don't bother with area portal flooding if we are leaked
2023-02-13 20:18:09 -05:00
Eric Wasylishen
48fe527955
light: add _lightgrid_hint point entity key for customizing lightgrid bounds
...
use it as a info_null key: "_lightgrid_hint" "1"
2023-02-12 15:03:08 -07:00
Jonathan
c954953735
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2023-02-12 08:10:59 -05:00
Jonathan
4c7459e673
fix the condition for Q2 phong warning
2023-02-12 08:10:52 -05:00
Eric Wasylishen
85ba6ca205
qbsp: fix "unsigned marksurfaces" warning printing wrongly after auto upgrade
2023-02-11 22:30:49 -07:00
Eric Wasylishen
71a0ce77ac
qbsp: q2: set leaf 0's cluster to -1
...
leaf 0 is the invalid placeholder leaf, but we were giving it
cluster 0 which is valid. instead, give it cluster -1
2023-02-07 23:17:55 -07:00
Jonathan
c2acae8c6b
fix hint brushes
2023-02-06 21:58:53 -05:00
Eric Wasylishen
c649fc2544
qbsp: add a warning message when the .bsp requires "extended limits" (unsigned marksurfaces)
2023-02-04 14:11:01 -07:00
Eric Wasylishen
302d600f4c
qbsp: strip _tb_ keys, convert __TB_empty to skip
2023-01-30 00:28:31 -07:00
Jonathan
36b8b21990
set -wrnormals by default on -q2rtx
...
inherit -phong from worldspawn
2023-01-18 15:49:51 -05:00
Eric Wasylishen
1fb53cbe4d
qbsp: fix area assignment on leaking q2 maps
...
reverts c9243d4fea
2022-12-21 21:18:06 -07:00
Eric Wasylishen
35fe26b7a6
qbsp: fix FindTargetEntity (was breaking hiprotate)
2022-12-19 00:55:20 -07:00
Jonathan
d5e29a1c90
add _nofill key, which causes an entity to not count as an entity for the purposes of occupancy (for lights in walls, etc)
...
add _nonudge key, to disabling nudging of lights "stuck" inside walls
2022-12-15 04:30:22 -05:00
Eric Wasylishen
82aa1e4396
light: make "_light_alpha 0" behave as expected (invisible to light)
2022-12-14 21:46:36 -07:00
Eric Wasylishen
e7b20733d3
qbsp: write .prt files in text mode for TB compatibility
2022-12-09 22:54:56 -07:00
Eric Wasylishen
3e673d2119
qbsp/light: restore TRANS33/TRANS66 faces casting translucent shadows by default
2022-12-06 23:38:43 -07:00
Eric Wasylishen
7ce14a376f
qbsp/light: make liquids not cast shadows by default
...
previously opaque Q2 liquids (e.g. lava, opaque water) were casting shadows / dirt
2022-12-06 17:03:39 -07:00
Jonathan
15b9a78fd1
fix gate being incorrect
...
add surflight grouping
fix minlight on color'd _surface lights
2022-12-05 20:35:44 -05:00
Eric Wasylishen
41de747a9a
qbsp: for "Q2 phong (value set, LIGHT unset) used on a mirrored face." warning, don't set value to 0
...
- setting value to 0 was not a robust way to disable phong
- it could actually have the reverse effect if "value 1" was
being used to change a smoothing group, setting value back to 0
could reintroduce unwanted smoothing
- that hack should be less useful with the phong system improvements
in the previous commits
2022-12-01 01:23:28 -07:00
Eric Wasylishen
f66e4790a4
qbsp/light: add no_phong texinfo flag (currently not used/exposed)
2022-12-01 01:16:17 -07:00
Eric Wasylishen
1065adecc6
qbsp/light: implement _phong_group key, equivalent to Q2 "value" field
2022-12-01 00:25:05 -07:00
Eric Wasylishen
abb92d4b0f
qbsp: fix crash when using -omitdetail and an all-detail bmodel
2022-11-21 01:13:31 -07:00