Commit Graph

613 Commits

Author SHA1 Message Date
Ozkan Sezer b2911290a7
fix hexen2 hull sizes (#318) 2021-09-11 11:46:03 -06:00
Eric Wasylishen 5fef157f53 qbsp: take floor/ceil of node/leaf bounds even for bsp2
for consistency with refactor branch
2021-09-06 14:53:05 -06:00
Eric Wasylishen d85ca375e5 qbsp: fix node/leaf mins/maxs calculations
they should use floor/ceil.

Otherwise a node with max X=10.5 will be written
to bsp29 as having a max of 10
2021-09-06 12:03:59 -06:00
Eric Wasylishen f0d1c8488b qbsp: pad lumps with \0 rather than ' ', for consistency with common/bspfile 2021-08-26 20:22:45 -06:00
Eric Wasylishen 8a1bc3ef20 qbsp: refactor clipnode writing (changes .bsp output)
- drop reshuffling feature from ExportClipNodes
  As far as I can tell, the only purpose of this was to keep clipnodes
  for a given model contiguous within the lump (i.e. keep the different
  hulls contiguous).

  Vanilla qbsp didn't appear to have done this, and the code was
  unmaintainable/complex, so I'm dropping the feature.
2021-08-26 20:22:39 -06:00
Eric Wasylishen 6a50313ded qbsp: add AddLumpFromBuffer function 2021-08-26 20:22:34 -06:00
Eric Wasylishen ff7f8a1542 qbsp: add -nothreads debug option 2021-08-23 00:12:38 -06:00
Eric Wasylishen 29652b4a7a qbsp: fix some threading issues with solidbsp.cc stats 2021-08-23 00:00:01 -06:00
Eric Wasylishen a53cf8dbbe qbsp: fix some thread safety bugs (mostly affecting stats output) 2021-08-22 23:45:42 -06:00
Eric Wasylishen 7a78e0a5b5 build: remove unused includes, fixes compat with tbb 2021.3.0 2021-07-13 21:47:52 -06:00
Eric Wasylishen c9570260fa gcc 11: pass constant to offsetof 2021-05-30 23:12:17 -06:00
Eric Wasylishen 386faa9315 qbsp: raise MAX_SUPERFACE_POINTS from 512 to 8192 2021-03-23 21:05:52 -06:00
Eric Wasylishen fcf0ebbbfe build: upgrade googletest 2021-02-07 14:42:12 -07:00
Eric Wasylishen b5fcdec19e cleanup: remove "byte" typedef 2021-02-07 14:02:35 -07:00
Eric Wasylishen 1dee7269d6 qbsp: dont't clip self-intersecting func_detail_fence and func_detail_illusionary
Makes foliage easier with _mirrorinside 1
2020-07-21 20:46:18 -06:00
Eric Wasylishen c30a0a46a9 qbsp: fix origin brushes in hexen 2. Drop _no_bbox_rotation_expansion
document origin brushes. Never expand the bbox when origin brushes are in
use.
2020-02-24 01:26:53 -07:00
Eric Wasylishen a91ee8cc7e qbsp: fix heap corruption errors on VS2019. Winding bookkeeping is wrong
now
2020-01-29 22:46:39 -07:00
Eric Wasylishen 0873b0af2c qsbp: code cleanup 2020-01-29 22:45:55 -07:00
Eric Wasylishen d083f0f87f qbsp: parallelize PartitionSurfaces 2020-01-29 21:14:55 -07:00
Eric Wasylishen 1a161b3ad5 qbsp: code cleanup 2020-01-29 20:56:29 -07:00
Eric Wasylishen f74d85c022 Revert "qbsp: parallelize solidbsp"
This reverts commit 2ebfa8d780.
2020-01-29 01:51:31 -07:00
Eric Wasylishen 2ebfa8d780 qbsp: parallelize solidbsp 2020-01-29 01:22:29 -07:00
Eric Wasylishen 1f565d7e7a qbsp: parallelize CSGFaces 2020-01-28 21:18:08 -07:00
Eric Wasylishen d6136c154d light: add _light_alpha func_group key for making faces translucent for
light
2019-12-28 21:48:33 -07:00
Eric Wasylishen a4c1ce6ff6 qbsp, light: support _lightignore on func_detail/group 2019-12-09 00:09:20 -07:00
Eric Wasylishen 5e74b4d0bb qbsp: fix external maps with no worldspawn brushes
Thanks to ZungryWare for the report
2019-11-29 21:03:54 -07:00
Eric Wasylishen cefd20c8da qbsp: fixes for -wrbrushes + rotation 2019-11-24 17:23:41 -07:00
Eric Wasylishen d7d797b898 qbsp: restore bounds expansion for rotators.
Add "_no_bbox_rotation_expansion" key for opting-out of the bounds expansion

Fixes #271
2019-10-27 23:02:05 -06:00
Eric Wasylishen 79d3aa99de qbsp: fix relative paths for .wad files
Fixes #279
2019-10-27 19:03:45 -06:00
Eric Wasylishen 4ec22ee3f9 qbsp: more logging of face line numbers for errors/warnings 2019-10-13 23:10:42 -06:00
Eric Wasylishen 1577981960 qbsp: fix clip brushes export with -wrbrushes, and various other
fixes for -wrbrushes
2019-10-03 19:59:56 -06:00
Eric Wasylishen 209d481b4c qbsp: attempted fix of -wrbrushes (ProcessEntity behaviour was changed
a while ago and copy/pasted code in BSPX_CreateBrushList wasn't updated)
2019-10-03 00:13:00 -06:00
Eric Wasylishen 04601656ff qbsp: Add support for _minlight_excludeN where N is in 2..9 2019-08-15 19:45:51 -06:00
Shpoike 89365949bc Squashed commit of the following:
commit 8ca122916d
Author: Eric Wasylishen <ewasylishen@gmail.com>
Date:   Thu Jul 4 20:54:23 2019 -0600

    fix linker error (radlights is in 2 .cpp files)

commit 8f06fc9c8d
Author: Eric Wasylishen <ewasylishen@gmail.com>
Date:   Thu Jul 4 20:53:57 2019 -0600

    add clarification comment

commit 038a553fb0
Author: Eric Wasylishen <ewasylishen@gmail.com>
Date:   Thu Jul 4 20:30:27 2019 -0600

    fix tests compilation

commit 02e94ec507
Author: Eric Wasylishen <ewasylishen@gmail.com>
Date:   Thu Jul 4 19:59:25 2019 -0600

    hlbsp: use q_snprintf

commit 669a5a7911
Author: Eric Wasylishen <ewasylishen@gmail.com>
Date:   Thu Jul 4 19:56:21 2019 -0600

    Reformat

commit 6653760982
Merge: 347a455 ac3553c
Author: Eric Wasylishen <ewasylishen@gmail.com>
Date:   Thu Jul 4 19:28:06 2019 -0600

    Merge remote-tracking branch 'origin/master' into hlbsp

    # Conflicts:
    #	include/qbsp/qbsp.hh

commit 347a455102
Author: Shpoike <Shpoike@users.noreply.github.com>
Date:   Thu Mar 28 02:18:16 2019 +0000

    Misc HLBSP tweaks

    Added support for multiple -wadpath args.
    Added -xwadpath (for eg valve/*.wad to avoid bloat/license issues).
    Reworked hint brushes - the non-hint surfaces can use any name, just so long as they're not 'hint', for compat with zhlt.
    Support 'bevel' and 'null' textures for compat with zhlt.

commit 7fb22c7367
Author: Shpoike <Shpoike@users.noreply.github.com>
Date:   Thu Mar 28 01:59:42 2019 +0000

    Support for halflife-style .rad surface lights (probably too bright, but the basics work).

commit 2da504fb62
Author: Shpoike <Shpoike@users.noreply.github.com>
Date:   Thu Mar 28 01:56:27 2019 +0000

    Add minus-prefixed textures for halflife's randomised-textures feature, instead of getting crash-to-desktop errors when the map is loaded.

commit 6366199bdb
Author: Shpoike <Shpoike@users.noreply.github.com>
Date:   Thu Mar 21 04:51:24 2019 +0000

    First attempt at hlbsp output.
2019-07-04 21:08:17 -06:00
Eric Wasylishen ac3553cb50 brush.cc: temporary hotfix, disable bounding box tweak when rotate_offset
is set. Breaks usage of origin brush with func_train
2019-06-29 18:27:05 -06:00
Eric Wasylishen b343b9504a qbsp, light: support _minlight_exclude on func_group, detail, etc. 2019-04-05 21:14:39 -06:00
Eric Wasylishen 83d9071269 qbsp: fix tjuncs on bmodels
Fixes #232
2019-03-25 01:31:43 -06:00
Eric Wasylishen ad65449cef qbsp: add "-midsplitsurffraction n" option as an alt. to -maxnodesize
switch to midsplit if the node contains more than this fraction of the
model's total surfaces. Try 0.15 to 0.5. Works better than
maxNodeSize for maps with a 3D skybox (e.g. +-128K unit maps)
2019-02-11 00:52:38 -07:00
Eric Wasylishen 16ad2b077a qbsp: -objexport debugging: Add another point where an .obj is dumped 2019-01-26 22:22:07 -07:00
Eric Wasylishen 2df839cfc2 light: Add "_bounce" "-1" to disable bouncing for a func_detail/etc. 2019-01-22 00:02:46 -07:00
Eric Wasylishen 0ac4909396 qbsp: change outside.cc to not fill leafs that have faces that are
straddling in and out of the void.

Previously, we were just deleting these faces, leaving HOMs.
Keeping them but filling the leaf in as solid doesn't work either, because
if they are the only faces left in the leaf it messes up the content type
determination later.

Fixes test_tjunc01.map test case from Qmaster.
2019-01-19 21:56:05 -07:00
Eric Wasylishen 4a360989f3 qbsp: add -worldextent option for compiling large maps, default 65536 2018-12-24 01:53:08 -07:00
Eric Wasylishen fc72bbb935 qbsp: fix _mirrorinside on bmodels so that they have CONTENTS_SOLID
as expected
2018-08-28 21:23:08 -06:00
Eric Wasylishen 8164506d30 qbsp: read valve 220 with q2/q3 flags
Fixes #212
2018-04-12 15:07:07 -06:00
Eric Wasylishen 02e66edd5b qbsp: make "too many edges" have a clear error message, instead of
an assertion failure
2018-04-05 22:18:28 -06:00
Eric Wasylishen 4491598bdb qbsp: fix qbsp crash when worldspawn has 0 brushes 2018-03-23 14:48:20 -06:00
Eric Wasylishen 30c19ab9da qbsp: support reading Q2/Q3 detail flag 2018-03-18 19:50:35 -06:00
Eric Wasylishen f92b48a8cb qbsp: experimental _noclipfaces key 2018-03-13 12:23:41 -06:00
Eric Wasylishen c9b32214c1 qbsp: fix "_mirrorinside" on bmodels.
NOTE: This turns the contents of bmodels to CONTENTS_EMPTY if
"_mirrorinside" is used. This is not ideal (e.g. if used on a func_door,
bullets will go through the door but it blocks the player), but it's
usable for func_illusionary at least.
2018-03-12 21:15:31 -06:00
Eric Wasylishen 94dbd0a705 qbsp: _phong_angle_concave support 2018-01-30 01:20:38 -07:00