Commit Graph

116 Commits

Author SHA1 Message Date
Jonathan 617cd3b089 consistency rename; texdata_t -> maptexdata_t 2022-06-16 09:35:46 -04:00
Jonathan c62480c337 consistency rename; mtexinfo_t -> maptexinfo_t 2022-06-16 09:35:08 -04:00
Jonathan 78b979d670 Merge branch 'type-cleanup' into brushbsp
# Conflicts:
#	include/light/entities.hh
#	qbsp/brush.cc
#	qbsp/map.cc
2022-06-14 17:19:30 -04:00
Jonathan d24ea4922a entdict cleanup 2022-06-14 17:18:13 -04:00
Jonathan 7827885f0f add texturedef support
change Q2_CONTENTS_TRANSLUCENT parsing; remove it always, but if the surface doesn't have TRANS then swap it with DETAIL which is probably what they intended
2022-06-14 10:50:35 -04:00
Jonathan b2a0f8039e remove dm/start/coop checking
remove entity target(name) checking; as mods and maps get more complex, this is best left up to the editors to use the FGD to report these things.
2022-06-13 07:10:53 -04:00
Jonathan 98682f41fa move brush/leaf counts into gamedef
(Q2 stores every combo currently, old code kept in case we want to use that instead)
2022-06-12 03:35:44 -04:00
Eric Wasylishen 64159d92f1 Merge remote-tracking branch 'github-desktop-paril/type-cleanup' into brushbsp 2022-06-10 21:32:23 -06:00
Jonathan 42c4060a64 canonize plane stuff into an enum type, remove duplicates
more macros into constexpr's
use options.epsilon directly instead of ON_EPSILON in qbsp
2022-06-10 04:43:56 -04:00
Jonathan c5e864fca1 re-enable stuff
undo the shared lock stuff
2022-06-06 03:26:19 -04:00
Jonathan 8f50108b5e slight optimization for winding_t: use memcpy directly. the copy constructor can't automatically optimize it into a memcpy because of the iterator wrapper.
use side_t where appropriate
add a shared lock to map.planes, and hide the original vector to prevent non-locked read/writes
move MakeSkipTexinfo to the beginning of the operation - make a global skip texinfo as the first texinfo. it will get culled out later if need be.
re-enable ChooseMidPlaneFromList; seems to work, but maybe there's a test that is failing that is the reason it was if'd out?
enable parallelization of PartitionBrushes since map.planes is lockable now
2022-06-05 22:52:02 -04:00
Eric Wasylishen e3ee12e985 Merge branch 'type-cleanup' into brushbsp 2022-06-03 23:44:03 -06:00
Jonathan 8b4bd6deeb non-recursive method for animated textures; makes it easier to follow and makes sure the chain ends in -1 2022-06-01 17:42:37 -04:00
Eric Wasylishen 3b83508f37 Revert "qbsp: remove unused face csg code"
This reverts commit 2ad9e27d3b.
2022-05-21 01:44:59 -06:00
Eric Wasylishen 6f1ca3c79d Merge branch 'type-cleanup' into brushbsp 2022-05-15 14:02:42 -06:00
Jonathan d9c6e52bd3 Merge branch 'type-cleanup' of https://github.com/Paril/ericw-tools into type-cleanup 2022-05-15 10:09:41 -04:00
Jonathan e2512372c3 fix -convert not working properly for Q2 maps
begin code for alias files
2022-05-15 10:09:38 -04:00
Eric Wasylishen c82741ff8a Merge branch 'type-cleanup' into brushbsp 2022-05-15 00:46:49 -06:00
Eric Wasylishen e834b848b9 qbsp: fix areanodes test 2022-05-15 00:15:17 -06:00
Eric Wasylishen c537ad39c1 qbsp: move wadlist to map struct 2022-05-14 15:55:18 -06:00
Eric Wasylishen bc90198006 qbsp: move wal_cache to map struct 2022-05-14 15:29:58 -06:00
Eric Wasylishen fa18a6755a qbsp: fix q2 brush export breaking when multiple tests run 2022-05-14 15:13:47 -06:00
Eric Wasylishen a1b8a38283 merge non-brush bsp specific changes from brushbsp branch 2022-05-11 01:58:53 -06:00
Eric Wasylishen 893b0b080e qbsp: move to unique_ptr<brush_t> vectors 2022-05-03 02:35:43 -06:00
Eric Wasylishen 2ad9e27d3b qbsp: remove unused face csg code 2022-05-01 01:13:03 -06:00
Eric Wasylishen 8efb6f689b qbsp: add -outsidedebug flag 2022-04-27 19:18:27 -06:00
Eric Wasylishen 064147b908 qbsp: move PortalizeWorld() to portals.hh 2022-04-24 01:07:20 -06:00
Eric Wasylishen 133ee77fc5 testqbsp: fix textures not loading in tests 2022-04-20 01:31:26 -06:00
Eric Wasylishen f467257f72 qbsp: start test case for qbsp_simple_sealed2.map 2022-04-15 21:05:14 -06:00
Eric Wasylishen 8a71b372bd qbsp: remove unnecessary num*() helpers from mapdata_t 2022-04-15 00:27:50 -06:00
Eric Wasylishen 5df0dde756 map.cc: move rgfStartSpots to map struct 2022-04-11 17:49:49 -06:00
Eric Wasylishen 9d2f00a1b2 qbsp: tidying: move pWorldEnt() to mapdata_t 2022-04-11 00:13:42 -06:00
Eric Wasylishen 9295181f84 qbsp.hh: remove brush.hh include 2022-04-09 23:15:21 -06:00
Eric Wasylishen a019088c2f Merge branch 'type-cleanup' into brushbsp 2022-04-02 21:05:46 -06:00
Jonathan c81e9ace28 remove old threading code entirely
add new parallel logging stuff in common/parallel which wraps parallel_for(_each) and provides automatic percentage indicator
fix issue with light not pulling in settings
move logging stuff into its own namespace and simplify
2022-03-01 10:28:59 -05:00
Jonathan df92d9ce12
Command line args systems (#2)
* cmd

* cmake change for tbb DLLs
add in test for double-hyphens

* cmd

* game version

* settings!

* bsp texture usage
decompile fix for q1bsp

* finish up the options for qbsp

* light finished?

* finish up the few missing bits

* move scalar/int32 up

* Run clang-format pass

* natvis for our mathlib
use slightly faster storage for winding
fix light tests

* allow dictionary to be a base type

* re-run style

* Remove cfg_static
Fix options summary

* natvis for lockable_value<T>

* last-ish pass?

* format

* forgot last few lockables
2022-02-27 00:01:57 -05:00
Eric Wasylishen 91f7d9adaa qbsp: remove surface_t 2022-02-21 00:05:48 -07:00
Eric Wasylishen 8c84871129 qbsp: wip: add CSG-ing back in 2022-02-20 01:19:55 -07:00
Eric Wasylishen 2a257693c6 Merge branch 'type-cleanup' into brushbsp 2022-02-17 00:43:08 -07:00
Jonathan b0ece93f83 Fix/implement animated textures for Q2 2022-02-16 19:23:19 -05:00
Eric Wasylishen 1fbfd199c5 qbsp: wip port of BrushBSP from Q2 tools
currently can compile qbsp_simple.map (2 brushes)
no faces, but generates leafs/nodes which seem OK
2022-02-13 12:03:27 -07:00
Jonathan ed325eedea surface faces now use list/vector 2022-02-06 11:39:22 -07:00
Jonathan d076920665 Revert "Instead of calculating brush extents globally, do it per brush creation"
This reverts commit 069720078f.
2022-01-27 01:52:08 -05:00
Jonathan 069720078f Instead of calculating brush extents globally, do it per brush creation
Use portal node bounds for extents
2022-01-27 01:03:38 -05:00
Jonathan 3f37de95a5 Fix tests 2022-01-26 18:15:53 -05:00
Jonathan 571e7337fc Fix the temporary hintskip detection and finally move it to gamedef
Dynamic extent calculation - turned on by default - will automatically determine the extents used for winding_from_plane beforehand. On a 50kb .map file it only takes about 10ms, so for the majority of maps it should be instantaneous.
2022-01-26 18:03:31 -05:00
Jonathan 5d6d7a71a2 Fix missing includes for list 2022-01-23 19:28:50 -05:00
Jonathan 75339df231 Simplify surface_t by using lists 2022-01-23 19:00:01 -05:00
Jonathan 07dd73e5bc Persist native contents when converting them to detail
Simplify hull areas
Q2's `face_get_contents` generated empty surfaces when SKIP was used. It now has another line of defense to ensure contents aren't set to empty, but I'm not sure where the other line of defense went that was supposed to do this.
Remove old comment
2022-01-22 17:23:51 -05:00
Jonathan 53b4f640e2 use vector<brush_t> directly now 2022-01-17 11:06:13 -05:00