Garux
c20192e970
mbspc: write entity numbers in decompiled maps
2024-12-20 00:57:57 +05:00
Garux
dbcdb4044e
* fix deformvertexes autosprite2 on brushes and models
...
broken for brushes in c166e4214e by new triangualtion
broken for models forever
fixes https://github.com/TTimo/GtkRadiant/issues/658
2024-12-17 09:29:30 +05:00
Garux
af7c039b21
trim all trailing spaces in mbspc altogether
2024-12-10 10:29:56 +05:00
Garux
79f435721b
mbspc * fix build speed penalty due to terminal output
...
most noticeable with msvcrt, e.g.:
dump to file: 8 sec
ucrt terminal: 14 sec
msvcrt terminal: 40 sec
2024-12-10 10:14:31 +05:00
Garux
9ed79ea8cf
correct libxml #include type
2024-12-06 06:15:55 +05:00
Willi Schinmeyer
27c5b9e78b
Rework TemplateString for standard compliance
...
Creating an std::integer_sequence from a user-defined string literal is
a non-standard gcc extension. This alternative implementation should
conform to C++20.
2024-12-05 19:00:23 +05:00
Willi Schinmeyer
14e1cc95ad
Fix StringFixedSize infinite template recursion
...
On MSC, `sizeof...(Args) != 1 ||` does not short-circuit properly, so
`std::tuple_element_t<0, std::tuple<Args...>>` is treated as an
out-of-bounds access.
This felt like a good use-case for concepts, but the fix could also have
been done while keeping std::enable_if.
2024-12-04 11:30:59 +05:00
Garux
721687afbe
manage snprintf uses
2024-12-04 08:32:40 +05:00
Garux
55dc6e677d
use std::set std::map contains()
2024-12-01 06:01:52 +05:00
Garux
7dc1a3dbb0
switch to c++20, switch to std::span
2024-11-27 02:07:43 +05:00
Garux
8202b5a6ba
fix some warnings
2024-11-24 02:00:56 +05:00
Garux
7a4695e7eb
tweak md4 funcs
2024-11-24 01:10:30 +05:00
Garux
2afef413c0
fix floating point errors
2024-11-16 05:52:52 +05:00
Garux
c488aa115b
* -globalflag <surfaceparm>: add surface flag to every bsp shader. Reusable, e.g. -globalflag slick -globalflag nodamage.
2024-11-14 22:02:38 +05:00
Garux
db64da67a4
modernize surfaceExtra_t storage
2024-11-13 06:47:24 +05:00
Garux
a24c330de2
refactor tjunction.cpp
2024-11-13 00:35:23 +05:00
Garux
c166e4214e
* improved brush faces triangulation wrt degenerate triangles production (non -maxarea algorithm)
2024-11-11 04:59:17 +05:00
Garux
e0169cdc63
* -nobrushsnap: disable brush vertices snapping (of drawsurfs) (experimental, keep eye on meta merge efficiency)
...
fixes most of issues added by tjuction fixing due to offshape vertices insertion
2024-11-11 04:26:57 +05:00
Garux
0145a3df45
apply bevel surfaceflags unconditionally
...
seemingly does not add extra bsp shaders
useful in Urban Terror to prevent walljumps by slick surfaceparm
2024-11-07 05:17:17 +05:00
Garux
343cf73d29
force q3map2 net send if >1-2 seconds has passed for greater build monitoring responsibility
2024-11-03 02:36:14 +05:00
Garux
958b99a4c4
fix si->implicitImagePath extension presence vagueness added in c3437b7833
...
closes #220
2024-10-31 01:50:50 +05:00
Garux
9a9d48ab20
fix -bounce -dump files numbering, don't write last empty file
2024-09-18 18:16:05 +05:00
Garux
9a4f0321ef
Merge commit 'c54bd5caf3dd576e729bd20141cb348badd457eb'
2024-07-04 14:01:33 +05:00
Garux
7499ba60ea
always fix backsplashes in vfsGetFileCount, vfsLoadFile to surely work in unix
...
fixes e.g. misc_model.model-path with backsplashes
https://github.com/Garux/netradiant-custom/pull/200
2024-06-23 09:23:08 +05:00
Garux
d59668f943
don't write nomipmaps hack 5daf2e265e when native external lightmaps, as it prevents r_mapOverbrightBits application
2024-04-05 14:45:42 +05:00
Garux
5daf2e265e
* generate shaders to force nomipmaps flag on external lightmap images created by lightstyles and external lms hacks
...
fix -trisoup: apply after each -bounce
remove excess WriteBSPFile() when -yes-bounceStore + 'No diffuse light to calculate, ending radiosity'
https://github.com/TTimo/GtkRadiant/issues/66
2024-03-09 17:01:12 +05:00
Garux
34038fd7fd
unify WriteBSPFile() print
2024-03-08 04:23:25 +05:00
Garux
a3d438c4be
* adjust -light -trisoup to enable performance hack for games with low verts per lmed surf count (e.g. 64 in Q3):
...
-bsp -meta -mv 999 //get big lmed surfs with max verts count = max trisoup verts (-debugsurfaces to debug)
-light -extlmhacksize 1024 -trisoup //gen shaders for external lms and mark as trisoup
2024-02-26 22:41:10 +06:00
Garux
c8bf05af57
fix -info leafsurfaces alignment
2024-02-26 20:26:57 +06:00
Garux
6abeb431e3
fix ds->lightmapAxis after MergeMetaTriangles
2024-02-26 17:39:13 +06:00
Garux
6749261e75
* -maxshaderinfo <N>: Sets max amount of shaderInfo, default = 8192
2024-02-15 23:35:45 +06:00
Garux
20a9afcd1d
* -maxmapdrawsurfs <N>: Sets max amount of mapDrawSurfs, used during .map compilation (-bsp, -convert), default = 131072
2024-02-15 22:35:58 +06:00
Garux
2721cca15b
untie PatchMapDrawSurfs() from MAX_MAP_DRAW_SURFS, was doing stack overflow when increased
2024-02-14 09:35:39 +06:00
Garux
c54bd5caf3
appease clang's sfinea
2024-02-08 23:25:55 +06:00
Garux
e77d713bad
* fix custom shaders generation for lightstyles and external lightmaps hacks for :q3map suffixed shaders
...
note ignoring only classic stageless :q3map shaders; ones with stages are assumed as templates for custom shaders, hidden by suffix
closes #165
2024-02-04 09:33:43 +06:00
Garux
4b26129c47
minor tweaks
2024-02-03 17:34:58 +06:00
Garux
df02774ff5
tweak StringOutputStream use
...
auto str = StringOutputStream()(bla) use form was not doing copy elision or move, but copy
2024-01-29 16:54:08 +06:00
Garux
b4e44bc8ed
refactor StringFixedSize, auto str = String64()() use form was not doing copy elision
2024-01-25 23:46:01 +06:00
Garux
8923546e79
more precise -bounce description
2023-08-23 00:24:29 +06:00
Garux
a2e35eb774
in autocaulk use caulk instead of nodraw, if latter is nonsolid
...
#145
2023-08-18 17:50:42 +06:00
Thomas Debesse
2c947b7e95
q3map2/light: introduce -nobouncestore
...
when storing computed lightmap on each bounce, user can interrupt compilation and
get working files, but it spends allocation time (which is slow and single-threaded
with this option, user can decide to only allocate lightmaps on the very final
bounce, it means it can't be interrupted, but it can save a lot of time
2023-08-18 15:10:59 +06:00
Matthias Krüger
374f66bb42
q3map2: don't store lightmap if the last bounce computation ran empty.
2023-08-18 15:06:20 +06:00
Garux
1fb1896f11
tweak light styles checks
2023-08-18 11:30:48 +06:00
Garux
d40538eea0
* fix RBSP style keys on -exportents and decompilation, so that they are alright for -onlyents and compilation
2023-08-18 01:20:58 +06:00
Garux
a5bad3d471
* fix: don't turn lights with targetname to styled for IBSP, as they are not switchable there
2023-08-17 19:46:49 +06:00
Garux
1da9dbfea9
* -keepmodels in -bsp / _keepModels on worldspawn: keep misc_model entities in the BSP file after compile
2023-08-17 19:22:21 +06:00
Garux
1e909131be
* misc_model _target and group entity _targetname key aliases for baking the model into entity
...
helps when targetname key is not wanted on an entity, as changing its behavour
crosslinking of keys versions works, underscored version has priority
2023-07-05 14:45:05 +06:00
Garux
cfe248da83
q3map2 -light -scale: don't scale bounced light; user expects scaling light sources here
2023-07-05 12:43:58 +06:00
Garux
f9bc21ab12
* -lessbrushes switch: less brushes when decompiling Q1, HL maps at the expense of texturing
2023-01-18 21:36:11 +06:00
Garux
f43f9da361
mbspc: * improve decompilation quality of Q1, HL maps greatly (texturing correctness, less brushes)
...
#87
#92
2023-01-18 21:33:23 +06:00