Commit Graph

532 Commits

Author SHA1 Message Date
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
Garux
00bb22e458 q3map2 * fix unwanted culling of both matching brush faces 2019-03-19 16:54:23 +03:00
Garux
b75d061ff0 fix mbspc linux compilation 2019-03-15 21:41:15 +03:00
Garux
4b1b789fa8 mbspc: use newer q_platform.h from ioq3, enables win64 compilation 2019-03-07 17:10:31 +03:00
Garux
812a8b6001 q3map2: follow ODR
enables compilation with -fno-common
2019-02-23 00:09:42 +03:00
Garux
202a05461f prevent shader name string overflow in ShaderInfoForShader 2019-02-23 00:06:57 +03:00
Garux
e55e622d2f prevent buffer read overflow 2019-02-23 00:05:25 +03:00
Garux
6680d394e8 fix use after free (freed by realloc in EmitShader) 2019-02-23 00:02:58 +03:00
Garux
d1ac937b50 mbspc: add -bsp2map220 switch, writting map in Valve 220 format with correct textures alignment for Quake 1/2, SiN and Half-Life BSPs
+various improvements of decompiling
2019-02-11 18:25:50 +03:00
Garux
a21a5c7290 mbspc: bump hl limits (by Garey) 2019-02-10 19:35:52 +03:00
Garux
c0f417b9cb mbspc: bump limits to handle complex maps (by SpaKK)
http://www.quake3world.com/forum/viewtopic.php?f=10&t=51522
2019-02-10 19:05:19 +03:00
Garux
0a09aff18a mbspc: fix fixes 2019-02-10 17:22:42 +03:00
Thomas Köppe
8875e2dd80 Change winding_t and bspbrush_t to use flexible array members rather than size-1 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.
2019-02-10 17:07:42 +03:00
TTimo
5064c1f163 more cleanups 2019-02-10 16:46:50 +03:00
Thomas Köppe
fee0e36602 [bspc.c] Change directory variables to have static storage; they're
quite large for automatic storage.
2019-02-10 16:41:04 +03:00
Thomas Köppe
13a3b91cc3 [l_bsp_{hl,q1}.c] Fix erroneous use of comma operator 2019-02-10 16:37:32 +03:00
Thomas Köppe
39c70072da [l_bsp_{q1,q2,sin}.c] Fix undefined behaviour in array access 2019-02-10 16:36:35 +03:00
Victor Luchits
39a3819765 Fix compilation warnings caused by abs/fabs confusion 2019-02-10 16:31:09 +03:00
Victor Luchits
8143f33548 Do not call CheckPlaneAgainstParents on tiny splits 2019-02-10 16:29:34 +03:00
Joel Baxter
e8522ae2c9 make AAS_LoadAASFile work with zero-sized lumps
AAS_LoadAASLump will return 0/NULL in an error case. However it will also
return the input buffer pointer if length is 0, and the input buffer pointer
may be 0/NULL in the case where AAS_LoadAASLump is meant to allocate memory.

This means that it can return 0/NULL in a perfectly legal case where the lump
length is 0. Since AAS_LoadAASFile inteprets this as a fatal error, that's
bad.

I'm not sure how to best disambiguate this, but a low-touch fix is for the
caller of AAS_LoadAASLump to be OK with a returned NULL pointer if the lump
length is 0.

Also: added a missing break statement to avoid a spurious "don't know what to
do" message when using the aasinfo switch.
2019-02-10 16:24:16 +03:00
Joel Baxter
4443f667cf update fields in the example custom config file
The settings in cfgq3.c had diverged from the actual fields and defaults in
these ways:
- extra field phys_maxacceleration
- missing fields phys_walkaccelerate, phys_swimaccelerate, rs_maxfallheight
- different defaults for phys_airaccelerate, phys_maxstep, phys_maxwaterjump

Also the code in aas_cfg.[ch] for reading the settings was missing
rs_maxfallheight.

It's brittle to require multiple different files to agree on these fields, but
rather than fix that issue this is just a band-aid to bring things back into
alignment so that custom configs based on the example file can be used again.
2019-02-10 16:22:18 +03:00
Chris Brooke
777cd9e09a QuakeLive fix-ups. 2019-02-10 16:17:16 +03:00
Chris Brooke
2d96a0053e Initial QuakeLive support. 2019-02-10 16:15:31 +03:00
Ben Noordhuis
d8462c5831 Include func_static in AAS calculations unless spawnflags has bit 1 set. 2019-02-10 15:35:51 +03:00
Ben Noordhuis
c897b97e01 Source and destination should not overlap in call to strcpy(), use memmove(). 2019-02-10 15:34:31 +03:00
Ben Noordhuis
2cba675936 Fix warning: format not a string literal and no format arguments. 2019-02-10 15:30:30 +03:00