Garux
e4eae18f5f
use safe_malloc_info instead of unreachable code
2020-01-23 05:01:21 +03:00
Garux
de8171f1ea
use snprintf instead of strcpy, strcat
2020-01-22 00:03:16 +03:00
Garux
1c73baa8b9
don't check safe_malloc() result for NULL
2020-01-21 23:45:57 +03:00
Garux
3f8d708bc4
repackBSPMain(): do Error on bspList overflow
2020-01-20 19:46:19 +03:00
Garux
d58454d718
repackBSPMain(): don't check for NULL before free()
...
reset counts (isn't required at the moment, just for potential safety)
2020-01-20 19:33:02 +03:00
Garux
dfae69d446
don't check for NULL, while doing free()
2020-01-20 19:14:52 +03:00
Garux
67820df935
simplify phrasing in vsf.c
2020-01-20 17:49:44 +03:00
Garux
bc8cc6e213
fix compilation in Linux (Q_stricmp was function before and was implicitly linked w/o direct inclusion)
...
remove platform dependent branching in q3data
2020-01-20 16:33:33 +03:00
Garux
7492d3d8c5
use memcpy in CopyWindingAccuIncreaseSizeAndFreeOld
...
rephrase ChopWindingInPlaceAccu::fineEpsilon
2020-01-13 12:43:18 +03:00
Garux
4d9a6cc2a9
const pointer in copy functions
2020-01-13 04:31:05 +03:00
Garux
5dc0244ef9
remove unused statistic variables
2020-01-13 00:39:55 +03:00
Garux
a626907ba9
use offsetof( type, flexible_array_member[size] ) semantics
2020-01-13 00:37:44 +03:00
Garux
99bae99b36
add safe_calloc(), safe_calloc_info() functions, use them (optimization, code shortening)
2020-01-12 18:55:03 +03:00
Thomas Köppe
23a166a4dd
Change winding_t, winding_accu_t and brush_t to use flexible array members rather than fixed-sized arrays.
...
The arrays were always meant to be variably sized, and objects are only ever allocated dynamically. Object size computations are simplified with this change.
Flexible arrays were introduced in C99, so this change means that we will require a C99-conforming compiler henceforth.
2020-01-12 01:32:43 +03:00
Thomas Köppe
1e2ccf5f06
Use standard "offsetof" facility rather than manual code involving null pointer dereferences.
2020-01-12 00:49:05 +03:00
Thomas Köppe
07c14c71a1
[unzip.c{,pp}] Change zc{alloc,free} to internal linkage
2020-01-11 20:29:10 +03:00
Thomas Köppe
78bc1dcec6
[q3map2] Unwind script stack in case of script loading error.
...
Also avoid type punning read into char* variable (even though char* and void* happen to be layout-compatible).
2020-01-11 20:16:26 +03:00
Garux
d320ac3a4b
optimize copystring(), use it
2020-01-10 20:43:15 +03:00
Garux
d9bad45a3d
emit error on shader name string overflow in ShaderInfoForShader instead of silent truncation 202a05461f
2020-01-09 20:30:21 +03:00
Zack Middleton
48444683ee
q3map2: add missing help for q3map2 stage arguments
...
Move -keeplights help from -light stage to -bsp. Add other ~40 arguments
that were missing from help. My main focus was on the -convert stage
but I tried to document the rest as well. Some descriptions are copied
from message when enabling the option.
2019-12-28 12:40:14 +03:00
Zack Middleton
c9a33917e3
q3map2: fix crash if command-line argument is missing
...
Running `q3map2 -fs_forbiddenpath -v mapname.map` would crash because
-v gets replaced with NULL in main().
Running `q3map2 -threads` would crash because missing next argument
for number of threads.
2019-12-28 12:06:36 +03:00
Zack Middleton
9c60ebea68
q3map2: fix not displaying default args for some q3map2 stages
...
Fix not displaying default arguments, and possibly segfaulting, when
running q3map2 -bsp, -analyze, -convert, -exportents, -export, or
-import.
2019-12-28 11:52:56 +03:00
Garux
19accfbbab
fix Convert_ReferenceLightmaps() from 42ab06e363
2019-12-28 00:59:50 +03:00
Garux
48f3a19d87
repackBSPMain(): use StrBuf struct for shader dump (safer, faster)
2019-12-28 00:32:12 +03:00
Garux
d0032126cd
repackBSPMain(): use pointer to array of chars semantics for bspList
2019-12-27 14:07:40 +03:00
Garux
3b4f22ee32
use pushStringCallback in vfsListShaderFiles()
2019-12-27 09:07:55 +03:00
Garux
02fce47d00
add -complevel to -pk3
2019-12-27 07:32:54 +03:00
Garux
05be4d4936
add autopk3.c::packResource(), packTexture()
2019-12-27 07:28:18 +03:00
Garux
5d46d88d2d
refactor autopk3.c
...
generalize Q_stricmp, Q_strncasecmp defines instead of local implementations
replace Q_strncpyz, Q_strcat, Q_strncat with strlcpy, strlcat versions: strcpyQ, strcatQ, strncatQ
fix ExtractFilePath, ExtractFileBase, ExtractFileExtension edge case (empty path string)
ExtractFileBase() : mimic StripExtension() logic
BeginMapShaderFile() : use ExtractFileBase(), ExtractFilePath()
2019-12-27 06:01:28 +03:00
Garux
8373782b75
generalize FixDOSName function and its use
2019-12-20 20:10:49 +03:00
Garux
3cbbbaf7e9
move main.c::pk3 business->autopk3.c
2019-12-20 20:05:42 +03:00
Garux
853633efd1
move main.c::FixAAS()->convert_bsp.c
2019-12-20 17:39:04 +03:00
Thomas Debesse
68f8cabf95
split bsp conversion stuff from q3map2
2019-12-20 08:02:06 +03:00
Thomas Debesse
27b1549a2d
split minimap stuff from q3map2
2019-12-20 06:57:02 +03:00
Thomas Debesse
18d7d50444
[q3map2] unvanquished expects white minimap
2019-12-20 06:34:57 +03:00
Garux
c401adfe3e
* -brightness only affects lightmap brightness, like q3map_lightmapBrightness, as there are -vertexscale and -gridscale for the rest
...
is multipled with q3map_lightmapBrightness
2019-12-12 00:20:00 +03:00
Garux
3f2825b8ec
* -extlmhacksize N (external lightmaps hack size) -light switch
...
similar to -lightmapsize N: Size of lightmaps to generate (must be a power of two)
but instead of native external lightmaps enables hack to reference them in autogenerated shader (for vanilla Q3 etc)
2019-12-06 00:55:16 +03:00
Garux
42ab06e363
* -lightmapsastexcoord conversion: support 'external lightmaps, referenced by shader' hack
2019-12-05 22:56:42 +03:00
Garux
b96aed7190
* support -shadersasbitmap in -lightmapsastexcoord conversion mode
2019-12-04 22:35:50 +03:00
Garux
661e8b00de
use EXTERNAL_LIGHTMAP macro, shorten code
2019-12-04 22:18:44 +03:00
Garux
74a5d6cf8d
* support -lightmapsastexcoord conversion to .ase
2019-12-04 21:56:02 +03:00
Garux
6a5d148284
q3map2 * -fillpink in light stage: fill unoccupied pixels with pink colour
2019-11-11 04:13:13 +03:00
Garux
3464341167
refactor WriteTGA24()
2019-11-11 03:28:26 +03:00
Garux
d92c32d453
q3map2 * misc_model::_remap: also remap 'abrakadabraNAME' shaders by _remap = 'NAME;newname'
...
exact match has priority over this
2019-11-11 01:14:10 +03:00
Garux
c0b5454fd8
q3map2::misc_model::_remap: more persistent input error check
2019-11-10 22:45:14 +03:00
Garux
8dab7339d9
rephrase -trianglecheck and -extravisnudge code
2019-09-30 18:51:29 +03:00
Garux
f2f36df58f
q3map2 * _maxlight worldspawn key (works unless exposure is used) (for those, who know, what they do)
2019-07-25 19:55:16 +03:00
Garux
070161fd13
shorten code
2019-07-25 19:23:13 +03:00
Garux
635c732e72
fix warnings
2019-07-21 00:49:53 +03:00
Garux
12d010446b
* Brush->AutoCaulk Selected (F4); camera must be there, where legit player respawn could be, i.e. close to selection and not inside of a brush
2019-03-23 19:10:41 +03:00