Jonathan
9f734ff976
Merge branch 'type-cleanup' into brushbsp
...
# Conflicts:
# common/bspfile.cc
# include/common/bspfile.hh
# light/trace.cc
2022-06-30 05:23:05 -04:00
Jonathan
ee65e46d0a
init palette for Q2
2022-06-30 02:43:25 -04:00
Jonathan
410106ff90
fix uninitialized memory
2022-06-29 14:27:00 -04:00
Jonathan
03ee5c52e8
add an entry point for specifically loading meta-only file formats, like .wal; used for discerning replacements from their source material (since replacements are often larger than the default, we need the scale info)
...
add a new meta format, which is just a JSON representation of the metadata contained in a .wal
simplify texture loading in `light`
fix `light` not handling replacement textures very well
string_iequals take string_view like the others
move averageColor to be alongside pixel data, where it belongs
2022-06-29 12:59:33 -04:00
Jonathan
decee3ac83
Merge branch 'type-cleanup' into brushbsp
2022-06-28 10:35:29 -04:00
Jonathan
aac5027ec6
simplify texture load
2022-06-28 10:35:17 -04:00
Jonathan
c1dc3cb7d8
Merge branch 'type-cleanup' into brushbsp
...
# Conflicts:
# include/common/bspfile.hh
2022-06-28 04:13:26 -04:00
Jonathan
44c50717c3
move generic image loading routine to `img`
...
move light-specific "load textures from BSP" routine to light
fix a couple bugs with external wad textures (there should always be at least a 40-byte miptex in there)
light can now load external textures
move -paths to common settings
fix bug with missing texture not filling miptex name
2022-06-28 01:37:12 -04:00
Jonathan
c23b7d2ec9
allow Quake-likes to load textures similarly to Q2 (finding best place to load them from)
...
allow Quake and Q2 to handle other texture formats (mainly just TGA for now)
2022-06-27 11:30:28 -04:00
Jonathan
bf1cb56e5a
fix build
...
add setting to control file priority
2022-06-27 10:41:24 -04:00
Jonathan
59bff81e9d
tests for new WAD stuff
2022-06-27 08:14:30 -04:00
Jonathan
26608c1b37
Merge branch 'type-cleanup' into brushbsp
...
# Conflicts:
# common/bspfile.cc
# common/bspinfo.cc
2022-06-27 08:14:03 -04:00
Jonathan
732621c59a
fix bugs in miptex writing
...
clear FS when loading filesystem again (for tests mainly)
move img::load_palette to where it is in brushbsp
2022-06-27 08:13:04 -04:00
Jonathan
cf04f644e0
Merge branch 'type-cleanup' into brushbsp
...
# Conflicts:
# common/bspinfo.cc
# include/common/bspfile.hh
# include/qbsp/map.hh
# include/qbsp/wad.hh
# qbsp/wad.cc
2022-06-27 06:44:45 -04:00
Jonathan
510023e089
step 1 of finishing the rewrite I started of the image subsystems.
...
- for Quake-likes, WADs will be added as file system archives directly when the first brush is encountered since the wad key is ready to go by that point.
- after loading the .map and before constructing the BSP, what I call secondary textures (animation frames for Quake-likes) are added to the list, and the BSP's miptex data is filled.
- BSP miptex data is now opaque to the BSP process; the BSP simply copies the raw miptex information from the input. This simplifies the BSP structures and reading/writing routines.
- the img subsystem supports reading from raw miptexes now, although in practice this only happens for Quake-likes atm
- instead of a "wal cache", maps now have a "meta cache" which stores the metadata information for all games instead of just Quake II
- texture meta can now be ref'd out rather than needing to be copied every time (mainly only a gain for the std::string)
- wad.cc/wad.hh is gone; wads are now pushed into the filesystem archive
- fixed broken wad_archive
- fs subsystem iterated on a little bit; supports marking archives as external (only used for wads currently; see `LoadTextureData`)
- load_tga has better error handling
- add in foot-gun protection to the BSP readers; now they assert on failure to read instead of silently propagating that error throughout the rest of the process
- bsputil uses img stuff now, so it should handle palettes better
2022-06-27 03:58:23 -04:00
Eric Wasylishen
92dd54c0b1
bspfile: fix is_any_solid() implementation to be just (contents.native & Q2_CONTENTS_SOLID)
2022-06-27 01:19:31 -06:00
Eric Wasylishen
22f0def4b1
update Catch2 to v3.0.1
2022-06-26 13:21:29 -06:00
Jonathan
7010cc7ed2
remove unnecessary includes from entdata
2022-06-23 19:07:10 -04:00
Jonathan
579140067f
expose vector.size() using a subtype to not pollute winding_base_t
2022-06-23 18:42:38 -04:00
Jonathan
cb3ef7b19f
allow radlights to specify an entity dictionary instead (if the input is a .ent, it is an entity dict) which is more flexible
2022-06-22 17:03:00 -04:00
Eric Wasylishen
d972a10152
parser: support quark comments
2022-06-21 22:05:27 -06:00
Eric Wasylishen
40f370dbd5
Merge branch 'portalfaces' into brushbsp
2022-06-21 16:25:19 -06:00
Jonathan
72914b4724
moving more raw pointers to vectors/smart pointers
...
support for radiosity _surface lights with `_surface_radiosity` key
allow lightstyles for _surface radiosity lights
bounce enabled by default on Q2
remove ValueForKey, use epairs directly
2022-06-21 13:41:51 -04:00
Eric Wasylishen
57473f7b4a
Merge branch 'brushbsp' into portalfaces
2022-06-21 01:45:14 -06:00
Eric Wasylishen
cacdad3481
contentflags_t::to_string: fix typo
2022-06-21 01:44:15 -06:00
Eric Wasylishen
e39c8f9cf6
qbsp: fix simple_worldspawn_detail_wall
2022-06-20 23:05:56 -06:00
Eric Wasylishen
3276cfec56
wip
2022-06-20 22:23:00 -06:00
Eric Wasylishen
1c4b90a032
qbsp: fix detail_illusionary_noclipfaces_intersecting
2022-06-20 20:53:56 -06:00
Jonathan
df3e6d3988
remove Little* funcs, not used any more
...
remove byteswap as it wasn't used any more
re-introduce imemstream and omemstream to make it harder to accidentally use the wrong operators
add dynamic padding stream manipulator
use memstreams for BSPX
2022-06-20 21:39:08 -04:00
Jonathan
c79e263753
simplify bspx code
...
remove old obj preview for wrnormals
2022-06-20 20:42:34 -04:00
Jonathan
cd77b1a7e6
use vector as overflow instead of secondary storage for winding
2022-06-19 19:17:52 -04:00
Eric Wasylishen
4f3ca8c252
qbsp: wip import MarkVisibleSides from qbsp3
2022-06-19 16:04:54 -06:00
Jonathan
dfa1282d40
simplify/c++-ize CompressRow code and related areas (less allocations overall)
2022-06-18 18:25:23 -04:00
Jonathan
ac05a7ecf6
Revert "simplify/c++-ize CompressRow code and related areas (less allocations overall)"
...
This reverts commit 46aaa81ffd .
2022-06-18 17:29:07 -04:00
Jonathan
46aaa81ffd
simplify/c++-ize CompressRow code and related areas (less allocations overall)
2022-06-17 12:06:37 -04:00
Eric Wasylishen
0edd52517a
testqbsp: read .prt files back in
2022-06-16 23:22:15 -06:00
Eric Wasylishen
f6309a91cb
vis: move .prt reader to common
2022-06-16 21:55:03 -06:00
Eric Wasylishen
a746506d6a
clang-cl build fix
2022-06-16 20:54:15 -04:00
Jonathan
e57633bbca
the old Safe read/writes are gonedy now
2022-06-16 20:22:03 -04:00
Jonathan
1431384b28
don't display mirror_inside/clips_same_type in to_string if, with the native contents value alone, it will have the same outcome as if it wasn't there at all
2022-06-16 13:52:12 -04:00
Jonathan
0f86849038
remove gamedef_generic; there's never any place where it could accidentally be used anyways.
2022-06-16 12:08:11 -04:00
Jonathan
5855ab3528
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2022-06-16 12:06:45 -04:00
Jonathan
740ab24626
bspx stuff into its own file
...
change the printing to be less redundant on BSP version
2022-06-16 10:59:22 -04:00
Jonathan
41ef66190f
consistency rename; gtexinfo_t -> mtexinfo_t
2022-06-16 09:36:31 -04:00
Eric Wasylishen
2a2ea90bc7
bspfile.cc: add missing 'override's
2022-06-15 19:22:35 -06:00
Jonathan
8afcc54b74
move making contents valid from brush parsing into gamedef
2022-06-15 09:07:37 -04:00
Eric Wasylishen
0c24e7bbd0
clang-cl build fix
2022-06-14 20:18:06 -06:00
Jonathan
eedabe6f1c
fix bugs
2022-06-14 18:38:22 -04:00
Jonathan
17656eff78
don't return string ref, since it can be modified after it's inserted because of the vector growing
2022-06-14 18:34:01 -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
f1fd0bd30f
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
2022-06-14 10:50:54 -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
Eric Wasylishen
b9250d9243
fix Ubuntu build
2022-06-14 00:52:15 -06:00
Eric Wasylishen
6c613b2b51
fix clangcl build
2022-06-14 00:49:15 -06:00
Eric Wasylishen
a309e8467b
testmaps: add qbsp_q1_sealing.map
2022-06-14 00:44:50 -06:00
Jonathan
12caf1bcd4
move transsky/transwater code into portal_can_see_through
2022-06-13 02:34:39 -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
Jonathan
1a88b46e8c
RemapContentsForExport moved into gamedef
...
simplified gamedef stuff by checking which functions were still necessary, and no need to pass extended flags through at all now
detail type moved into Q1
2022-06-12 02:24:27 -04:00
Jonathan
54900cf7b6
move visblocker to a boolean
2022-06-12 01:02:31 -04:00
Jonathan
13bf99a7f3
fix test cases (implement equals(game) properly, and `is_empty` is false depending on get_content_type for Q2 now)
...
remove unnecessary condition from Q2 contents_are_empty since areaportals are already considered a valid non-empty type via get_content_type
2022-06-11 09:19:51 -04:00
Jonathan
10676603e9
move clip & origin into game-specific code
...
remove hint from brush; hint is technically a surface flag rather than a content flag, so we can infer it from the sides rather than needing to store it as a unique flag (we could still cache the result somewhere but this makes it consistent between q1 and q2)
2022-06-11 08:29:55 -04:00
Jonathan
be17bf7c7d
fix mistype
2022-06-11 07:32:43 -04:00
Jonathan
b33e792458
move clip-own-typeness over to gamedef & contentflags (fixes Q2 edge case with a solid version of a type bordering a translucent version)
2022-06-11 06:01:36 -04:00
Jonathan
e61998dd54
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
...
# Conflicts:
# qbsp/surfaces.cc
2022-06-11 05:43:29 -04:00
Jonathan
8b4f9f5480
move mirrorinside to gamedef
2022-06-11 05:37:50 -04:00
Eric Wasylishen
5372c4a568
qbsp: fix q2 liquids not mirrored
2022-06-10 23:29:28 -06:00
Eric Wasylishen
3bf797d72e
bspfile: build fix
2022-06-10 21:35:01 -06:00
Eric Wasylishen
64159d92f1
Merge remote-tracking branch 'github-desktop-paril/type-cleanup' into brushbsp
2022-06-10 21:32:23 -06:00
Eric Wasylishen
d4f1707cdb
qbsp: proper merging of Q2 contents
2022-06-10 19:19:00 -06:00
Eric Wasylishen
2a851f87d0
qbsp: use Q2_CONTENTS_DETAIL in Q2 mode, not CFLAGS_DETAIL
2022-06-10 18:16:03 -06:00
Jonathan
79ca3c1543
fix inversion on content types portal visibility in Q2 (opaque water, etc was considered see-through; now it correctly assumes they are solid)
2022-06-10 06:53:38 -04:00
Jonathan
812797f7ed
enable lighting for warp/sky in Q2
...
simplify bitflag definitions
change nudging light warning to make more sense
another #define -> constexpr pass
2022-06-10 06:29:14 -04:00
Jonathan
5b4660fa63
simplify crc code
2022-06-10 04:47:10 -04:00
Eric Wasylishen
3c4f798e97
qbsp: add create_detail_illusionary/fence/solid_contents
2022-06-10 01:07:20 -06:00
Eric Wasylishen
8c1095715c
qbsp: refactor out is_detail(int32_t types = CFLAGS_DETAIL_MASK) since it's going to depend on game now
2022-06-09 23:48:26 -06:00
Eric Wasylishen
47aa1f7476
qbsp: replace is_detail() with is_any_detail(options.target_game)
2022-06-09 23:32:33 -06:00
Jonathan
54efff2e7a
don't print out % if it hasn't changed
2022-06-06 03:29:33 -04:00
Jonathan
c5e864fca1
re-enable stuff
...
undo the shared lock stuff
2022-06-06 03:26:19 -04:00
Eric Wasylishen
e3ee12e985
Merge branch 'type-cleanup' into brushbsp
2022-06-03 23:44:03 -06:00
Eric Wasylishen
0f2ea5333d
move CompressRow/DecompressRow from vis to common
2022-05-24 21:01:41 -06:00
Eric Wasylishen
25b390aafe
qbsp: merge original brush lists when merging leafs in PruneNodes
2022-05-21 16:05:22 -06:00
Eric Wasylishen
b21b7466ce
Merge branch 'type-cleanup' into brushbsp
2022-05-16 21:33:57 -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
6f1ca3c79d
Merge branch 'type-cleanup' into brushbsp
2022-05-15 14:02:42 -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
c82741ff8a
Merge branch 'type-cleanup' into brushbsp
2022-05-15 00:46:49 -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
87fa3e08e3
build: link all test targets against gmock
...
enable ctest in root CMakeLists.txt
2022-05-11 00:54:23 -06:00
Eric Wasylishen
4a711908c8
Merge branch 'pr/322' into brushbsp
2022-05-11 00:29:58 -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
66ba184083
Merge branch 'type-cleanup' into brushbsp
2022-05-10 00:47: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
Eric Wasylishen
ec20072440
testqbsp: expand q2 detail test
2022-05-02 20:24:18 -06:00
Eric Wasylishen
fa97116d12
testqbsp: wip markfaces test
2022-05-02 02:13:54 -06:00
Eric Wasylishen
3a30891476
testqbsp: add more detail_illusionary tests
2022-05-01 21:44:58 -06:00
Eric Wasylishen
59684a1c5d
Merge remote-tracking branch 'Paril/type-cleanup' into brushbsp
2022-05-01 01:21:01 -06:00
Eric Wasylishen
13612f18d0
qbsp: factor out 'chops' condition in BrushGE
2022-05-01 00:48:58 -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
e3a4005516
bspfile.cc: log extended contents flags
2022-04-28 00:47:02 -06:00
Eric Wasylishen
10fbfff20d
qbsp: liquids are higher priority than detail_illsuionary
2022-04-27 01:26:56 -06:00
Eric Wasylishen
d2c7412a44
testqbsp: proper test for detail_doesnt_remove_world_nodes
2022-04-26 19:08:44 -06:00
Eric Wasylishen
9977c14a2f
bspfile: add gamedef_t::contents_seals_map()
2022-04-25 18:40:55 -06:00
Eric Wasylishen
ed8c758486
build: modernize GoogleTest setup
...
following https://google.github.io/googletest/quickstart-cmake.html
Fixes VS2022 test runner not working when opening ericw-tools as
a camke project
2022-04-15 14:55:58 -06: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
Eric Wasylishen
c9a6ba402c
log: don't pass ANSI colors to OutputDebugStringA
...
since they aren't rendered in VS's Output window
2022-04-03 14:15:48 -06:00
Eric Wasylishen
a0fbfdbad5
log: use ANSI colors for strings containing "warning" or "error"
2022-04-03 12:56:11 -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
Jonathan
0c827208ec
Allow `-subdivide 0` to turn off subdivision
...
imglib now lives in common
fs 'load' split into two functions, where and load. the former allows you to query for and return archive & path for a given file, whereas the latter handles that for you.
use log verbose in light rather than own verbose flag
2021-11-21 15:08:02 -05:00