Commit Graph

359 Commits

Author SHA1 Message Date
Eric Wasylishen 0f2ea5333d move CompressRow/DecompressRow from vis to common 2022-05-24 21:01:41 -06:00
Eric Wasylishen 8fe5d9d694 common: adjust formatting of usage line
-remove version hash as it's printed above
-rename `usage` variable to `programDescription`
2022-05-15 17:44:17 -06:00
Eric Wasylishen a4ebfab691 tests: fix case issue with catch includes 2022-05-15 13:19:46 -06:00
Eric Wasylishen 03d9df50e5 tests: don't include(CTest) as it generates unwanted targets 2022-05-15 12:43:35 -06:00
Eric Wasylishen 7f0f3e9992 tests: fix build errors 2022-05-15 12:40:20 -06:00
Eric Wasylishen c925f7be74 test: convert test case macros to Catch2 2022-05-15 12:27:43 -06:00
Eric Wasylishen 28bea85d97 test: convert assertions to Catch2 format 2022-05-15 12:18:09 -06:00
Eric Wasylishen 9fe42ef6c7 test: swap GTest out in favour of Catch2 2022-05-15 12:00:50 -06:00
Eric Wasylishen 254310dc2c tests: switch to Catch2 style 2022-05-15 11:20:02 -06:00
Eric Wasylishen 9c806d2d15 settings: don't call exit(0) in printHelp() as it's problematic for tests 2022-05-14 18:11:14 -06:00
Eric Wasylishen ba37ae3a54 move serialize_bsp() to common/bspinfo.cc 2022-05-14 14:54:21 -06:00
Eric Wasylishen a1b8a38283 merge non-brush bsp specific changes from brushbsp branch 2022-05-11 01:58:53 -06:00
Eric Wasylishen 0147e51658 build: fix testcommon on clang-cl 2022-05-10 23:32:56 -06:00
Eric Wasylishen e9abb212bb settings: allow setting_enum to parse numeric representation of enums
use it for light forumla. disallow enums in setting_numeric.
2022-05-10 22:55:41 -06:00
Eric Wasylishen 0c4833226a settings: implement reset(). Fix setting_mangle::copyFrom()
We can't use the string serialization/deserialization trick because setting_mangle transforms
the value upon parsing
2022-05-10 00:43:22 -06:00
Eric Wasylishen 081d63a64c settings: add setting_container::copyFrom, setting_base::copyFrom
disable copy constructors on setting_container/setting_base, which were previously available but broken
2022-05-09 22:32:09 -06:00
Jonathan cc0e1a5561 move Face_IsLightmapped to light
Fix q2rtx, needs to include lightstyle for nodraw for emissive invisibles with lightstyles
fix wal (for the 900th time)
auto-set -nolighting for -q2rtx
2022-04-30 23:27:21 -04:00
Jonathan 1b852e3a20 fix WINDOW issue
surflight_subdivide minimum 1.0, to allow for people breaking their computers
2022-04-30 22:26:08 -04:00
Eric Wasylishen 6102390986 log: don't pass ANSI colors to OutputDebugStringA
since they aren't rendered in VS's Output window
2022-04-03 14:16:54 -06:00
Eric Wasylishen 24ca07188c log: use ANSI colors for strings containing "warning" or "error" 2022-04-03 14:16:22 -06:00
Jonathan f5cda68416 clean up percent stuff
comment out "didn't split" message
fix winding resize
merge phong loops together
2022-03-07 14:49:50 -05: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 a479a5ddfb use case-insensitive natsort for discoverArchives
add two other logging control bools, which -quiet now redirect to
add -lowpriority for CPU priority (on Windows)
2022-02-28 09:20:35 -05:00
Jonathan 6baea3bc03 Fix three bugs that slipped by for cmdargs
Remove old threading code, use tbb internally
2022-02-27 04:09:28 -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
Jonathan 542e6d63ad fix detail (again) 2022-02-16 19:54:12 -05:00
Jonathan b0ece93f83 Fix/implement animated textures for Q2 2022-02-16 19:23:19 -05:00
Jonathan 4cf6bc9e28 Merge branch 'type-cleanup' of https://github.com/Paril/ericw-tools into type-cleanup 2022-02-05 13:32:11 -05:00
Jonathan b7a06f4bb3 Don't automatically assign SOLID to brushes that have a valid trace type
Fix mixed contents warning displaying the wrong contents
2022-02-05 13:32:06 -05:00
Eric Wasylishen 8531286777 qbsp: replace `-nothreads` with `-threads 1` for consistency with light/vis 2022-01-30 17:50:21 -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 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 0414c77c19 Use copies rather than moving for conversion, so that graceful upgrades are graceful again 2022-01-25 04:49:20 -05:00
Jonathan be865bc5b8 Fix `face_get_contents` not handling hintskip properly
Simplify `Brush_GetContents` and use the first non-skip face as the base contents
Move period out of `LoadExternalMap` error message so it doesn't confuse the reader
Fix `WriteEntitiesToString` crashing on entities without any brushes (note: need a column/line on mapentity in future)
2022-01-23 23:18:59 -05:00
Jonathan 2f7a68a9e2 Fix making entire world detail 2022-01-22 21:39:15 -05:00
Jonathan 6c20e49cc3 change the flow of `face_get_contents` a bit; move earlier code into this block
remove `Brush_IsDetail`, as it's legacy and not required any more
MIST is no longer automatically "CFLAGS_DETAIL_ILLUSIONARY"
MIST/AUX default to _mirrorinside 1 if it's not set, matching vanilla behavior
2022-01-22 21:26:57 -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 68424edb8d introduce a flag for whether the target game supports bmodels with contents
move the check in SubdivideFace so that it can early-exit if subdivision isn't even enabled
2022-01-21 00:51:06 -05:00
Jonathan 10fa97e6b8 Use string_view where appropriate for parser, add some additional constructors for ease of use 2022-01-16 04:17:06 -05:00
Eric Wasylishen 4d1901534f common: fix gamedef_hl_t::get_default_palette() 2022-01-15 23:32:46 -07:00
Eric Wasylishen 4e94c7bab3 bspfile: fix UB reinterpret_cast causing ASan to complain on macOS 2022-01-15 22:40:03 -07:00
Eric Wasylishen f02bbca0c7 parser: fix reading past end of buffer 2022-01-15 18:31:35 -07:00
Jonathan 3d9277b711 Merge branch 'type-cleanup' of https://github.com/Paril/ericw-tools into type-cleanup 2021-12-20 14:51:20 -05:00
Jonathan e2d64e0e5d FS simplification
Fix transparency calculation (33% is 33% opacity, not 33% transparency)
2021-12-20 14:51:14 -05:00
Eric Wasylishen d0ea010acb bspfile.cc: fix handling of bsp format conversion
needs to return false so WriteBSPFile can upgrade to an extended limits format
2021-12-15 22:48:44 -07:00
Eric Wasylishen eceb031daa fs.cc: add missing <unordered_map> include 2021-12-13 19:52:48 -07:00
Eric Wasylishen 0d1c342bca fs.cc: don't attempt to use reference lifetime extension on std::shared_ptr
clang/gcc are erroring on this line
2021-12-13 19:51:01 -07:00
Eric Wasylishen e7d37df636 fs.cc: add missing <list> include 2021-12-13 19:37:23 -07:00
Eric Wasylishen a33d2d342d fs.cc: std::exception doesn't have a string constructor 2021-12-13 19:34:34 -07:00