Merge remote-tracking branch 'sf/master' into qss

This commit is contained in:
Shpoike 2021-09-03 20:19:12 +01:00
commit a5275c95d5
17 changed files with 364 additions and 171 deletions

View file

@ -174,6 +174,21 @@
<Option compilerVar="CC" />
</Unit>
<Unit filename="../../Quake/menu.h" />
<Unit filename="..\..\Quake\mdfour.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\fs_zip.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\snd_voip.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\pr_ext.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\r_part_fte.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="../../Quake/modelgen.h" />
<Unit filename="../../Quake/net.h" />
<Unit filename="../../Quake/net_bsd.c">

View file

@ -173,6 +173,21 @@
<Option compilerVar="CC" />
</Unit>
<Unit filename="../../Quake/menu.h" />
<Unit filename="..\..\Quake\mdfour.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\fs_zip.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\snd_voip.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\pr_ext.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\r_part_fte.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="../../Quake/modelgen.h" />
<Unit filename="../../Quake/net.h" />
<Unit filename="../../Quake/net_bsd.c">

View file

@ -134,27 +134,22 @@ A Quakespasm App (including program launcher and update framework) can be made u
Alternatively, have a look at <bf>Makefile.darwin</bf> for more instructions on building from a console.
</p>
<sect> Quake '2021 re-release' <p>
QuakeSpasm 0.94.0 has initial support for playing the 2021 re-release content:
<itemize>
<item> Copy the quakespasm exe to your rerelease installation.
<item> Extract the localization folder from QuakeEX.kpf (which is actually a zip file), and place it in the rerelease directory. Linux (Unix) users can do the following, for example:<newline>
<verb>unzip QuakeEX.kpf localization/loc_english.txt</verb>
<item> Run quakespasm as you normally do.
</itemize>
<sect1> Quake '2021 re-release' <p>
QuakeSpasm 0.94.0 has initial support for playing the 2021 re-release content: Copy the quakespasm binary to your rerelease installation and run quakespasm as you normally do.</p>
<sect> Changes<p>
<sect1> Changes in 0.94.0<p>
<itemize>
<item> Initial support for playing the 'Quake 2021 re-release' content (thanks to Andrei Drexler for bulk of the work.)
<item> Initial support for playing the 'Quake 2021 re-release' content (thanks to Andrei Drexler for bulk of the work, Guillaume Plourde for Q64 bsp format support.)
<item> Fix rendering bug when cl_bobcycle was set to zero (sf.net bug/41)
<item> Fixed buffer overflow with large char skybox names (sf.net bug/38)
<item> Fixed a missing MAXALIASFRAMES bounds check (sf.net bug/37)
<item> OpenGL: workaround Intel UHD 600 driver bug (sf.net bug/39)
<item> OpenGL: merged surface mark & cull optimizations from vkQuake.
<item> Compensate viewmodel distortion at fov > 90 (based on code from Qrack, thanks to Andrei Drexler for the patch.)
<item> Raised MAX_GLTEXTURES limit from 2048 to 4096 for now.
<item> Changed 'model has a skin taller than 480' error into a warning
<item> Reject lit files if they're the wrong size (eg hipnotic/start.bsp vs id1/start.lit or just a bsp that no longer has any coloured lits, etc)
<item> External ent files are now versioned using 4 digit crc of the original map's ents, like e1m1@c49d.ent, which is much safer. The old method (e.g. e1m1.ent) still works but isn't recommended.

View file

@ -213,6 +213,7 @@ OBJS = strlcat.obj &
wad.obj &
cmd.obj &
common.obj &
mdfour.obj &
fs_zip.obj &
crc.obj &
cvar.obj &

View file

@ -66,6 +66,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
/* BSP2 support. 32bits instead of shorts for everything (bboxes use floats) */
#define BSP2VERSION_BSP2 (('B' << 0) | ('S' << 8) | ('P' << 16) | ('2'<<24))
// Quake64
#define BSPVERSION_QUAKE64 (('Q' << 24) | ('6' << 16) | ('4' << 8) | ' ')
#define TOOLVERSION 2
typedef struct
@ -136,6 +139,14 @@ typedef struct miptex_s
unsigned offsets[MIPLEVELS]; // four mip maps stored
} miptex_t;
// Quake64
typedef struct miptex64_s
{
char name[16];
unsigned width, height;
unsigned shift;
unsigned offsets[MIPLEVELS]; // four mip maps stored
} miptex64_t;
typedef struct
{

View file

@ -3442,7 +3442,6 @@ LOC_LoadFile
void LOC_LoadFile (const char *file)
{
char path[1024];
FILE *fp = NULL;
int i,lineno;
char *cursor;

View file

@ -585,8 +585,11 @@ static texture_t *Mod_LoadMipTex(miptex_t *mt, byte *lumpend, enum srcformat *fm
texture_t *tx;
byte *srcdata = NULL;
size_t sz;
int shift = 0;
if (!mt->offsets[0]) //the legacy data was omitted. we may still have block-compression though.
if (loadmodel->bspversion == BSPVERSION_QUAKE64)
extdata = lumpend; //don't bother, I'm too lazy to validate offsets.
else if (!mt->offsets[0]) //the legacy data was omitted. we may still have block-compression though.
extdata = (byte*)(mt+1);
else if (mt->offsets[0] == sizeof(miptex_t) &&
mt->offsets[1] == mt->offsets[0]+(mt->width>>0)*(mt->height>>0) &&
@ -629,8 +632,18 @@ static texture_t *Mod_LoadMipTex(miptex_t *mt, byte *lumpend, enum srcformat *fm
*width = mt->width;
*height = mt->height;
*pixelbytes = mt->width*mt->height;
if (LittleLong (mt->offsets[0]))
srcdata = (byte*)mt+LittleLong(mt->offsets[0]);
if (loadmodel->bspversion == BSPVERSION_QUAKE64)
{
miptex64_t *mt64 = (miptex64_t*)mt;
srcdata = (byte*)(mt64 + 1); //revert to lameness
shift = mt64->shift;
}
else
{
if (LittleLong (mt->offsets[0]))
srcdata = (byte*)mt+LittleLong(mt->offsets[0]);
}
}
tx = (texture_t *) Hunk_AllocName (sizeof(texture_t) + *pixelbytes, loadname );
@ -638,6 +651,7 @@ static texture_t *Mod_LoadMipTex(miptex_t *mt, byte *lumpend, enum srcformat *fm
tx->name[sizeof(tx->name)-1] = 0; //just in case...
tx->width = mt->width;
tx->height = mt->height;
tx->shift = shift;
if (srcdata)
{
@ -662,6 +676,26 @@ static texture_t *Mod_LoadMipTex(miptex_t *mt, byte *lumpend, enum srcformat *fm
}
return tx;
}
/*
=================
Mod_CheckAnimTextureArrayQ64
Quake64 bsp
Check if we have any missing textures in the array
=================
*/
qboolean Mod_CheckAnimTextureArrayQ64(texture_t *anims[], int numTex)
{
int i;
for (i = 0; i < numTex; i++)
{
if (!anims[i])
return false;
}
return true;
}
/*
=================
Mod_LoadTextures
@ -722,22 +756,27 @@ void Mod_LoadTextures (lump_t *l)
mt->offsets[j] = LittleLong (mt->offsets[j]);
if ( (mt->width & 15) || (mt->height & 15) )
Sys_Error ("Texture %s is not 16 aligned", mt->name);
{
if (loadmodel->bspversion != BSPVERSION_QUAKE64)
Sys_Error ("Texture %s is not 16 aligned", mt->name);
}
tx = Mod_LoadMipTex(mt, (mod_base + l->fileofs + mipend), &fmt, &imgwidth, &imgheight, &imgpixels);
loadmodel->textures[i] = tx;
tx->update_warp = false; //johnfitz
tx->warpimage = NULL; //johnfitz
tx->fullbright = NULL; //johnfitz
mipend = m->dataofs[i];
//johnfitz -- lots of changes
if (!isDedicated) //no texture uploading for dedicated server
{
if (!q_strncasecmp(tx->name,"sky",3)) //sky texture //also note -- was Q_strncmp, changed to match qbsp
Sky_LoadTexture (tx, fmt, imgwidth, imgheight);
{
if (loadmodel->bspversion == BSPVERSION_QUAKE64)
Sky_LoadTextureQ64 (tx);
else
Sky_LoadTexture (tx, fmt, imgwidth, imgheight);
}
else if (tx->name[0] == '*') //warping texture
{
enum srcformat rfmt = SRC_RGBA;
@ -920,6 +959,9 @@ void Mod_LoadTextures (lump_t *l)
Sys_Error ("Bad animating texture %s", tx->name);
}
if (loadmodel->bspversion == BSPVERSION_QUAKE64 && !Mod_CheckAnimTextureArrayQ64(anims, maxanim))
continue; // Just pretend this is a normal texture
#define ANIM_CYCLE 2
// link them all together
for (j=0 ; j<maxanim ; j++)
@ -958,7 +1000,7 @@ void Mod_LoadLighting (lump_t *l)
{
int i, mark;
byte *in, *out, *data;
byte d;
byte d, q64_b0, q64_b1;
char litfilename[MAX_OSPATH];
unsigned int path_id;
int bspxsize;
@ -1009,6 +1051,29 @@ void Mod_LoadLighting (lump_t *l)
// LordHavoc: no .lit found, expand the white lighting data to color
if (!l->filelen)
return;
// Quake64 bsp lighmap data
if (loadmodel->bspversion == BSPVERSION_QUAKE64)
{
// RGB lightmap samples are packed in 16bits.
// RRRRR GGGGG BBBBBB
loadmodel->lightdata = (byte *) Hunk_AllocName ( (l->filelen / 2)*3, litfilename);
in = mod_base + l->fileofs;
out = loadmodel->lightdata;
for (i = 0;i < (l->filelen / 2) ;i++)
{
q64_b0 = *in++;
q64_b1 = *in++;
*out++ = q64_b0 & 0xf8;/* 0b11111000 */
*out++ = ((q64_b0 & 0x07) << 5) + ((q64_b1 & 0xc0) >> 5);/* 0b00000111, 0b11000000 */
*out++ = (q64_b1 & 0x3f) << 2;/* 0b00111111 */
}
return;
}
in = Q1BSPX_FindLump("RGBLIGHTING", &bspxsize);
if (loadmodel->lightdata && bspxsize == l->filelen*3)
{
@ -1608,6 +1673,9 @@ void Mod_LoadFaces (lump_t *l, qboolean bsp2)
Mod_CalcSurfaceBounds (out); //johnfitz -- for per-surface frustum culling
// lighting info
if (loadmodel->bspversion == BSPVERSION_QUAKE64)
lofs /= 2; // Q64 samples are 16bits instead 8 in normal Quake
if (lofs == -1)
out->samples = NULL;
else
@ -2662,9 +2730,12 @@ void Mod_LoadBrushModel (qmodel_t *mod, void *buffer)
case BSP2VERSION_BSP2:
bsp2 = 2; //sanitised revision
break;
case BSPVERSION_QUAKE64:
bsp2 = false;
break;
default:
loadmodel->type = mod_ext_invalid;
Con_Warning ("Mod_LoadBrushModel: %s has wrong version number (%i should be %i)\n", mod->name, mod->bspversion, BSPVERSION);
Con_Warning ("Mod_LoadBrushModel: %s has unsupported version number (%i should be %i)\n", mod->name, mod->bspversion, BSPVERSION);
return;
}
@ -2689,7 +2760,7 @@ void Mod_LoadBrushModel (qmodel_t *mod, void *buffer)
Mod_LoadFaces (&header->lumps[LUMP_FACES], bsp2);
Mod_LoadMarksurfaces (&header->lumps[LUMP_MARKSURFACES], bsp2);
if (!bsp2 && external_vis.value && sv.modelname[0] && !q_strcasecmp(loadname, sv.name))
if (mod->bspversion == BSPVERSION && external_vis.value && sv.modelname[0] && !q_strcasecmp(loadname, sv.name))
{
FILE* fvis;
Con_DPrintf("trying to open external vis file\n");

View file

@ -78,6 +78,7 @@ typedef struct texture_s
{
char name[16];
unsigned width, height;
unsigned shift; // Q64
struct gltexture_s *gltexture; //johnfitz -- pointer to gltexture
struct gltexture_s *fullbright; //johnfitz -- fullbright mask texture
struct gltexture_s *warpimage; //johnfitz -- for water animation

View file

@ -99,6 +99,8 @@ cvar_t scr_showpause = {"showpause","1",CVAR_NONE};
cvar_t scr_printspeed = {"scr_printspeed","8",CVAR_NONE};
cvar_t gl_triplebuffer = {"gl_triplebuffer", "1", CVAR_ARCHIVE};
cvar_t cl_gun_fovscale = {"cl_gun_fovscale","1",CVAR_ARCHIVE}; // Qrack
extern cvar_t crosshair;
qboolean scr_initialized; // ready to draw
@ -506,6 +508,7 @@ void SCR_Init (void)
Cvar_RegisterVariable (&scr_centertime);
Cvar_RegisterVariable (&scr_printspeed);
Cvar_RegisterVariable (&gl_triplebuffer);
Cvar_RegisterVariable (&cl_gun_fovscale);
Cmd_AddCommand ("screenshot",SCR_ScreenShot_f);
Cmd_AddCommand ("sizeup",SCR_SizeUp_f);

View file

@ -162,6 +162,59 @@ void Sky_LoadTexture (texture_t *mt, enum srcformat fmt, unsigned int srcwidth,
skyflatcolor[2] = (float)b/(count*255);
}
/*
=============
Sky_LoadTextureQ64
Quake64 sky textures are 32*64
==============
*/
void Sky_LoadTextureQ64 (texture_t *mt)
{
char texturename[64];
int i, p, r, g, b, count;
byte *front, *back, *front_rgba;
unsigned *rgba;
// pointers to both layer textures
front = (byte *)(mt+1);
back = (byte *)(mt+1) + (32*32);
front_rgba = (byte *) Hunk_Alloc(4*(32*32));
// Normal indexed texture for the back layer
q_snprintf(texturename, sizeof(texturename), "%s:%s_back", loadmodel->name, mt->name);
solidskytexture = TexMgr_LoadImage (loadmodel, texturename, 32, 32, SRC_INDEXED, back, "", (src_offset_t)back, TEXPREF_NONE);
// front layer, convert to RGBA and upload
p = r = g = b = count = 0;
for (i=0 ; i < (32*32) ; i++)
{
rgba = &d_8to24table[*front++];
// RGB
front_rgba[p++] = ((byte*)rgba)[0];
front_rgba[p++] = ((byte*)rgba)[1];
front_rgba[p++] = ((byte*)rgba)[2];
// Alpha
front_rgba[p++] = 128; // this look ok to me!
// Fast sky
r += ((byte *)rgba)[0];
g += ((byte *)rgba)[1];
b += ((byte *)rgba)[2];
count++;
}
q_snprintf(texturename, sizeof(texturename), "%s:%s_front", loadmodel->name, mt->name);
alphaskytexture = TexMgr_LoadImage (loadmodel, texturename, 32, 32, SRC_RGBA, front_rgba, "", (src_offset_t)front_rgba, TEXPREF_NONE);
// calculate r_fastsky color based on average of all opaque foreground colors
skyflatcolor[0] = (float)r/(count*255);
skyflatcolor[1] = (float)g/(count*255);
skyflatcolor[2] = (float)b/(count*255);
}
/*
==================
Sky_LoadSkyBox

View file

@ -21,8 +21,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __GLQUAKE_H
#define __GLQUAKE_H
#ifndef GLQUAKE_H
#define GLQUAKE_H
void GL_BeginRendering (int *x, int *y, int *width, int *height);
void GL_EndRendering (void);
@ -439,6 +439,7 @@ void Sky_ClearAll (void);
void Sky_DrawSky (void);
void Sky_NewMap (void);
void Sky_LoadTexture (texture_t *mt, enum srcformat fmt, unsigned int width, unsigned int height);
void Sky_LoadTextureQ64 (texture_t *mt);
void Sky_LoadSkyBox (const char *name);
extern qboolean skyroom_drawn, skyroom_drawing; //we draw a skyroom this frame
extern qboolean skyroom_enabled; //we know where the skyroom is ...
@ -462,5 +463,4 @@ void R_ScaleView_DeleteTexture (void);
float GL_WaterAlphaForSurface (msurface_t *fa);
#endif /* __GLQUAKE_H */
#endif /* GLQUAKE_H */

View file

@ -25,6 +25,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include "quakedef.h"
extern cvar_t r_drawflat, gl_overbright_models, gl_fullbrights, r_lerpmodels, r_lerpmove; //johnfitz
extern cvar_t scr_fov, cl_gun_fovscale;
//up to 16 color translated skins
gltexture_t *playertextures[MAX_SCOREBOARD]; //johnfitz -- changed to an array of pointers
@ -1041,6 +1042,7 @@ void R_DrawAliasModel (entity_t *e)
lerpdata_t lerpdata;
qboolean alphatest = !!(e->model->flags & MF_HOLEY);
int surf;
float fovscale = 1.0f;
//
// setup pose/lerp data -- do it first so we don't miss updates due to culling
@ -1074,9 +1076,14 @@ void R_DrawAliasModel (entity_t *e)
//
glPushMatrix ();
}
//FIXME: this needs to go. combine with depthrange and explicit viewmodel-only fov into a different projection matrix..
if (e == &cl.viewent && scr_fov.value > 90.f && cl_gun_fovscale.value)
fovscale = tan(scr_fov.value * (0.5f * M_PI / 180.f));
R_RotateForEntity (lerpdata.origin, lerpdata.angles, e->netstate.scale);
glTranslatef (paliashdr->scale_origin[0], paliashdr->scale_origin[1], paliashdr->scale_origin[2]);
glScalef (paliashdr->scale[0], paliashdr->scale[1], paliashdr->scale[2]);
glTranslatef (paliashdr->scale_origin[0], paliashdr->scale_origin[1] * fovscale, paliashdr->scale_origin[2] * fovscale);
glScalef (paliashdr->scale[0], paliashdr->scale[1] * fovscale, paliashdr->scale[2] * fovscale);
//
// random stuff

View file

@ -849,6 +849,13 @@ void BuildSurfaceDisplayList (msurface_t *fa)
poly->verts[i][3] = s;
poly->verts[i][4] = t;
// Q64 RERELEASE texture shift
if (fa->texinfo->texture->shift > 0)
{
poly->verts[i][3] /= ( 2 * fa->texinfo->texture->shift);
poly->verts[i][4] /= ( 2 * fa->texinfo->texture->shift);
}
//
// lightmap texture coordinates
//

View file

@ -30,41 +30,39 @@
<LI><A NAME="toc4.1">4.1</A> <A HREF="Quakespasm.html#ss4.1">Linux/Unix </A>
<LI><A NAME="toc4.2">4.2</A> <A HREF="Quakespasm.html#ss4.2">Windows </A>
<LI><A NAME="toc4.3">4.3</A> <A HREF="Quakespasm.html#ss4.3">Mac OS X </A>
<LI><A NAME="toc4.4">4.4</A> <A HREF="Quakespasm.html#ss4.4">Quake '2021 re-release' </A>
</UL>
<P>
<H2><A NAME="toc5">5.</A> <A HREF="Quakespasm.html#s5">Quake '2021 re-release' </A></H2>
<P>
<H2><A NAME="toc6">6.</A> <A HREF="Quakespasm.html#s6">Changes</A></H2>
<H2><A NAME="toc5">5.</A> <A HREF="Quakespasm.html#s5">Changes</A></H2>
<UL>
<LI><A NAME="toc6.1">6.1</A> <A HREF="Quakespasm.html#ss6.1">Changes in 0.94.0</A>
<LI><A NAME="toc6.2">6.2</A> <A HREF="Quakespasm.html#ss6.2">Changes in 0.93.2</A>
<LI><A NAME="toc6.3">6.3</A> <A HREF="Quakespasm.html#ss6.3">Changes in 0.93.1</A>
<LI><A NAME="toc6.4">6.4</A> <A HREF="Quakespasm.html#ss6.4">Changes in 0.93.0</A>
<LI><A NAME="toc6.5">6.5</A> <A HREF="Quakespasm.html#ss6.5">Changes in 0.92.1</A>
<LI><A NAME="toc6.6">6.6</A> <A HREF="Quakespasm.html#ss6.6">Changes in 0.92.0</A>
<LI><A NAME="toc6.7">6.7</A> <A HREF="Quakespasm.html#ss6.7">Changes in 0.91.0</A>
<LI><A NAME="toc6.8">6.8</A> <A HREF="Quakespasm.html#ss6.8">Changes in 0.90.1</A>
<LI><A NAME="toc6.9">6.9</A> <A HREF="Quakespasm.html#ss6.9">Changes in 0.90.0</A>
<LI><A NAME="toc6.10">6.10</A> <A HREF="Quakespasm.html#ss6.10">Changes in 0.85.9</A>
<LI><A NAME="toc6.11">6.11</A> <A HREF="Quakespasm.html#ss6.11">Changes in 0.85.8</A>
<LI><A NAME="toc6.12">6.12</A> <A HREF="Quakespasm.html#ss6.12">Changes in 0.85.7</A>
<LI><A NAME="toc6.13">6.13</A> <A HREF="Quakespasm.html#ss6.13">Changes in 0.85.6</A>
<LI><A NAME="toc6.14">6.14</A> <A HREF="Quakespasm.html#ss6.14">Changes in 0.85.5</A>
<LI><A NAME="toc6.15">6.15</A> <A HREF="Quakespasm.html#ss6.15">Changes in 0.85.4</A>
<LI><A NAME="toc6.16">6.16</A> <A HREF="Quakespasm.html#ss6.16">Changes in 0.85.3</A>
<LI><A NAME="toc6.17">6.17</A> <A HREF="Quakespasm.html#ss6.17">Changes in 0.85.2</A>
<LI><A NAME="toc6.18">6.18</A> <A HREF="Quakespasm.html#ss6.18">Changes in 0.85.1</A>
<LI><A NAME="toc5.1">5.1</A> <A HREF="Quakespasm.html#ss5.1">Changes in 0.94.0</A>
<LI><A NAME="toc5.2">5.2</A> <A HREF="Quakespasm.html#ss5.2">Changes in 0.93.2</A>
<LI><A NAME="toc5.3">5.3</A> <A HREF="Quakespasm.html#ss5.3">Changes in 0.93.1</A>
<LI><A NAME="toc5.4">5.4</A> <A HREF="Quakespasm.html#ss5.4">Changes in 0.93.0</A>
<LI><A NAME="toc5.5">5.5</A> <A HREF="Quakespasm.html#ss5.5">Changes in 0.92.1</A>
<LI><A NAME="toc5.6">5.6</A> <A HREF="Quakespasm.html#ss5.6">Changes in 0.92.0</A>
<LI><A NAME="toc5.7">5.7</A> <A HREF="Quakespasm.html#ss5.7">Changes in 0.91.0</A>
<LI><A NAME="toc5.8">5.8</A> <A HREF="Quakespasm.html#ss5.8">Changes in 0.90.1</A>
<LI><A NAME="toc5.9">5.9</A> <A HREF="Quakespasm.html#ss5.9">Changes in 0.90.0</A>
<LI><A NAME="toc5.10">5.10</A> <A HREF="Quakespasm.html#ss5.10">Changes in 0.85.9</A>
<LI><A NAME="toc5.11">5.11</A> <A HREF="Quakespasm.html#ss5.11">Changes in 0.85.8</A>
<LI><A NAME="toc5.12">5.12</A> <A HREF="Quakespasm.html#ss5.12">Changes in 0.85.7</A>
<LI><A NAME="toc5.13">5.13</A> <A HREF="Quakespasm.html#ss5.13">Changes in 0.85.6</A>
<LI><A NAME="toc5.14">5.14</A> <A HREF="Quakespasm.html#ss5.14">Changes in 0.85.5</A>
<LI><A NAME="toc5.15">5.15</A> <A HREF="Quakespasm.html#ss5.15">Changes in 0.85.4</A>
<LI><A NAME="toc5.16">5.16</A> <A HREF="Quakespasm.html#ss5.16">Changes in 0.85.3</A>
<LI><A NAME="toc5.17">5.17</A> <A HREF="Quakespasm.html#ss5.17">Changes in 0.85.2</A>
<LI><A NAME="toc5.18">5.18</A> <A HREF="Quakespasm.html#ss5.18">Changes in 0.85.1</A>
</UL>
<P>
<H2><A NAME="toc7">7.</A> <A HREF="Quakespasm.html#s7">Copyright </A></H2>
<H2><A NAME="toc6">6.</A> <A HREF="Quakespasm.html#s6">Copyright </A></H2>
<P>
<H2><A NAME="toc8">8.</A> <A HREF="Quakespasm.html#s8">Contact </A></H2>
<H2><A NAME="toc7">7.</A> <A HREF="Quakespasm.html#s7">Contact </A></H2>
<P>
<H2><A NAME="toc9">9.</A> <A HREF="Quakespasm.html#s9">Links </A></H2>
<H2><A NAME="toc8">8.</A> <A HREF="Quakespasm.html#s8">Links </A></H2>
<HR>
@ -215,36 +213,27 @@ Compile time options include
<P>A Quakespasm App (including program launcher and update framework) can be made using the <B>Xcode</B> template found in the MacOSX directory.</P>
<P>Alternatively, have a look at <B>Makefile.darwin</B> for more instructions on building from a console.</P>
<H2><A NAME="s5">5.</A> <A HREF="#toc5">Quake '2021 re-release' </A></H2>
<H2><A NAME="ss4.4">4.4</A> <A HREF="#toc4.4">Quake '2021 re-release' </A>
</H2>
<P>QuakeSpasm 0.94.0 has initial support for playing the 2021 re-release content:
<UL>
<LI> Copy the quakespasm exe to your rerelease installation.</LI>
<LI> Extract the localization folder from QuakeEX.kpf (which is actually a zip file), and place it in the rerelease directory. Linux (Unix) users can do the following, for example:<BR>
<PRE>
unzip QuakeEX.kpf localization/loc_english.txt
</PRE>
</LI>
<LI> Run quakespasm as you normally do.</LI>
</UL>
</P>
<H2><A NAME="s6">6.</A> <A HREF="#toc6">Changes</A></H2>
<P>QuakeSpasm 0.94.0 has initial support for playing the 2021 re-release content: Copy the quakespasm binary to your rerelease installation and run quakespasm as you normally do.</P>
<H2><A NAME="s5">5.</A> <A HREF="#toc5">Changes</A></H2>
<H2><A NAME="ss6.1">6.1</A> <A HREF="#toc6.1">Changes in 0.94.0</A>
<H2><A NAME="ss5.1">5.1</A> <A HREF="#toc5.1">Changes in 0.94.0</A>
</H2>
<P>
<UL>
<LI> Initial support for playing the 'Quake 2021 re-release' content (thanks to Andrei Drexler for bulk of the work.)</LI>
<LI> Initial support for playing the 'Quake 2021 re-release' content (thanks to Andrei Drexler for bulk of the work, Guillaume Plourde for Q64 bsp format support.)</LI>
<LI> Fix rendering bug when cl_bobcycle was set to zero (sf.net bug/41)</LI>
<LI> Fixed buffer overflow with large char skybox names (sf.net bug/38)</LI>
<LI> Fixed a missing MAXALIASFRAMES bounds check (sf.net bug/37)</LI>
<LI> OpenGL: workaround Intel UHD 600 driver bug (sf.net bug/39)</LI>
<LI> OpenGL: merged surface mark &amp; cull optimizations from vkQuake.</LI>
<LI> Compensate viewmodel distortion at fov &gt; 90 (based on code from Qrack, thanks to Andrei Drexler for the patch.)</LI>
<LI> Raised MAX_GLTEXTURES limit from 2048 to 4096 for now.</LI>
<LI> Changed 'model has a skin taller than 480' error into a warning</LI>
<LI> Reject lit files if they're the wrong size (eg hipnotic/start.bsp vs id1/start.lit or just a bsp that no longer has any coloured lits, etc)</LI>
<LI> External ent files are now versioned using 4 digit crc of the original map's ents, like e1m1@c49d.ent, which is much safer. The old method (e.g. e1m1.ent) still works but isn't recommended.</LI>
@ -257,7 +246,7 @@ unzip QuakeEX.kpf localization/loc_english.txt
<LI> Source repository moved to git.</LI>
</UL>
</P>
<H2><A NAME="ss6.2">6.2</A> <A HREF="#toc6.2">Changes in 0.93.2</A>
<H2><A NAME="ss5.2">5.2</A> <A HREF="#toc5.2">Changes in 0.93.2</A>
</H2>
<P>
@ -270,7 +259,7 @@ unzip QuakeEX.kpf localization/loc_english.txt
<LI> Update the third-party libraries. Other fixes/cleanups.</LI>
</UL>
</P>
<H2><A NAME="ss6.3">6.3</A> <A HREF="#toc6.3">Changes in 0.93.1</A>
<H2><A NAME="ss5.3">5.3</A> <A HREF="#toc5.3">Changes in 0.93.1</A>
</H2>
<P>
@ -284,7 +273,7 @@ unzip QuakeEX.kpf localization/loc_english.txt
<LI> Update the third-party libraries. Other fixes/cleanups.</LI>
</UL>
</P>
<H2><A NAME="ss6.4">6.4</A> <A HREF="#toc6.4">Changes in 0.93.0</A>
<H2><A NAME="ss5.4">5.4</A> <A HREF="#toc5.4">Changes in 0.93.0</A>
</H2>
<P>
@ -327,7 +316,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Update the third-party libraries.</LI>
</UL>
</P>
<H2><A NAME="ss6.5">6.5</A> <A HREF="#toc6.5">Changes in 0.92.1</A>
<H2><A NAME="ss5.5">5.5</A> <A HREF="#toc5.5">Changes in 0.92.1</A>
</H2>
<P>
@ -337,7 +326,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Updated some of the third-party libraries.</LI>
</UL>
</P>
<H2><A NAME="ss6.6">6.6</A> <A HREF="#toc6.6">Changes in 0.92.0</A>
<H2><A NAME="ss5.6">5.6</A> <A HREF="#toc5.6">Changes in 0.92.0</A>
</H2>
<P>
@ -357,7 +346,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Updated some of the third-party libraries. Other fixes/clean-ups.</LI>
</UL>
</P>
<H2><A NAME="ss6.7">6.7</A> <A HREF="#toc6.7">Changes in 0.91.0</A>
<H2><A NAME="ss5.7">5.7</A> <A HREF="#toc5.7">Changes in 0.91.0</A>
</H2>
@ -417,7 +406,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Raised MAX_SFX to 1024 (was 512).</LI>
</UL>
</P>
<H2><A NAME="ss6.8">6.8</A> <A HREF="#toc6.8">Changes in 0.90.1</A>
<H2><A NAME="ss5.8">5.8</A> <A HREF="#toc5.8">Changes in 0.90.1</A>
</H2>
@ -464,7 +453,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Support pausing demo playback with the "pause" command.</LI>
<LI> Autocompletion for "game", "record", "playdemo".</LI>
<LI> Experimental windowed fullscreen mode available with vid_desktopfullscreen 1 (only in SDL2 builds, takes effect upon entering fullscreen mode the next time.)</LI>
<LI> Silence "exceeded standard limit" messages unless developer cvar is >= 1.</LI>
<LI> Silence "exceeded standard limit" messages unless developer cvar is &gt;= 1.</LI>
<LI> Some spam moved from developer 1 to 2: "can't find tga/lit/ent", "trying to load ent", "bad chunk length", "meshing", "PR_AlocStringSlots: realloc'ing"</LI>
</UL>
</P>
@ -477,7 +466,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Update 3rd-party libraries.</LI>
</UL>
</P>
<H2><A NAME="ss6.9">6.9</A> <A HREF="#toc6.9">Changes in 0.90.0</A>
<H2><A NAME="ss5.9">5.9</A> <A HREF="#toc5.9">Changes in 0.90.0</A>
</H2>
<P>
@ -523,7 +512,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Other fixes and clean-ups.</LI>
</UL>
</P>
<H2><A NAME="ss6.10">6.10</A> <A HREF="#toc6.10">Changes in 0.85.9</A>
<H2><A NAME="ss5.10">5.10</A> <A HREF="#toc5.10">Changes in 0.85.9</A>
</H2>
<P>
@ -547,7 +536,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Several other minor fixes/cleanups.</LI>
</UL>
</P>
<H2><A NAME="ss6.11">6.11</A> <A HREF="#toc6.11">Changes in 0.85.8</A>
<H2><A NAME="ss5.11">5.11</A> <A HREF="#toc5.11">Changes in 0.85.8</A>
</H2>
<P>
@ -572,7 +561,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Miscellaneous source code cleanups.</LI>
</UL>
</P>
<H2><A NAME="ss6.12">6.12</A> <A HREF="#toc6.12">Changes in 0.85.7</A>
<H2><A NAME="ss5.12">5.12</A> <A HREF="#toc5.12">Changes in 0.85.7</A>
</H2>
<P>
@ -590,7 +579,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Several other small changes mostly invisible to the end-user</LI>
</UL>
</P>
<H2><A NAME="ss6.13">6.13</A> <A HREF="#toc6.13">Changes in 0.85.6</A>
<H2><A NAME="ss5.13">5.13</A> <A HREF="#toc5.13">Changes in 0.85.6</A>
</H2>
<P>
@ -601,7 +590,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Minor SDL video fixes.</LI>
</UL>
</P>
<H2><A NAME="ss6.14">6.14</A> <A HREF="#toc6.14">Changes in 0.85.5</A>
<H2><A NAME="ss5.14">5.14</A> <A HREF="#toc5.14">Changes in 0.85.5</A>
</H2>
<P>
@ -620,7 +609,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Several code updates from uHexen2 project, several code cleanups.</LI>
</UL>
</P>
<H2><A NAME="ss6.15">6.15</A> <A HREF="#toc6.15">Changes in 0.85.4</A>
<H2><A NAME="ss5.15">5.15</A> <A HREF="#toc5.15">Changes in 0.85.4</A>
</H2>
<P>
@ -638,7 +627,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
<LI> Other minor sound and cdaudio updates</LI>
</UL>
</P>
<H2><A NAME="ss6.16">6.16</A> <A HREF="#toc6.16">Changes in 0.85.3</A>
<H2><A NAME="ss5.16">5.16</A> <A HREF="#toc5.16">Changes in 0.85.3</A>
</H2>
<P>
@ -661,7 +650,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
</UL>
</P>
<H2><A NAME="ss6.17">6.17</A> <A HREF="#toc6.17">Changes in 0.85.2</A>
<H2><A NAME="ss5.17">5.17</A> <A HREF="#toc5.17">Changes in 0.85.2</A>
</H2>
<P>
@ -680,7 +669,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
</UL>
</P>
<H2><A NAME="ss6.18">6.18</A> <A HREF="#toc6.18">Changes in 0.85.1</A>
<H2><A NAME="ss5.18">5.18</A> <A HREF="#toc5.18">Changes in 0.85.1</A>
</H2>
<P>
@ -705,7 +694,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
</P>
<H2><A NAME="s7">7.</A> <A HREF="#toc7">Copyright </A></H2>
<H2><A NAME="s6">6.</A> <A HREF="#toc6">Copyright </A></H2>
<P>
<UL>
@ -716,7 +705,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
</UL>
</P>
<H2><A NAME="s8">8.</A> <A HREF="#toc8">Contact </A></H2>
<H2><A NAME="s7">7.</A> <A HREF="#toc7">Contact </A></H2>
<P>
<UL>
@ -731,7 +720,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
</UL>
</P>
<H2><A NAME="s9">9.</A> <A HREF="#toc9">Links </A></H2>
<H2><A NAME="s8">8.</A> <A HREF="#toc8">Links </A></H2>
<P>

View file

@ -16,42 +16,41 @@
4.1 Linux/Unix
4.2 Windows
4.3 Mac OS X
4.4 Quake '2021 re-release'
5. Quake '2021 re-release'
5. Changes
5.1 Changes in 0.94.0
5.2 Changes in 0.93.2
5.3 Changes in 0.93.1
5.4 Changes in 0.93.0
5.5 Changes in 0.92.1
5.6 Changes in 0.92.0
5.7 Changes in 0.91.0
5.7.1 Bugfixes
5.7.2 Visual improvements
5.7.3 Interface improvements
5.7.4 Code cleanup / Other
5.7.5 Raised limits
5.8 Changes in 0.90.1
5.8.1 Bugfixes
5.8.2 Performance
5.8.3 Visual improvements
5.8.4 Interface improvements
5.8.5 Code cleanup
5.9 Changes in 0.90.0
5.10 Changes in 0.85.9
5.11 Changes in 0.85.8
5.12 Changes in 0.85.7
5.13 Changes in 0.85.6
5.14 Changes in 0.85.5
5.15 Changes in 0.85.4
5.16 Changes in 0.85.3
5.17 Changes in 0.85.2
5.18 Changes in 0.85.1
6. Changes
6.1 Changes in 0.94.0
6.2 Changes in 0.93.2
6.3 Changes in 0.93.1
6.4 Changes in 0.93.0
6.5 Changes in 0.92.1
6.6 Changes in 0.92.0
6.7 Changes in 0.91.0
6.7.1 Bugfixes
6.7.2 Visual improvements
6.7.3 Interface improvements
6.7.4 Code cleanup / Other
6.7.5 Raised limits
6.8 Changes in 0.90.1
6.8.1 Bugfixes
6.8.2 Performance
6.8.3 Visual improvements
6.8.4 Interface improvements
6.8.5 Code cleanup
6.9 Changes in 0.90.0
6.10 Changes in 0.85.9
6.11 Changes in 0.85.8
6.12 Changes in 0.85.7
6.13 Changes in 0.85.6
6.14 Changes in 0.85.5
6.15 Changes in 0.85.4
6.16 Changes in 0.85.3
6.17 Changes in 0.85.2
6.18 Changes in 0.85.1
7. Copyright
8. Contact
9. Links
6. Copyright
7. Contact
8. Links
______________________________________________________________________
@ -250,29 +249,21 @@
Alternatively, have a look at Makefile.darwin for more instructions on
building from a console.
5. Quake '2021 re-release'
4.4. Quake '2021 re-release'
QuakeSpasm 0.94.0 has initial support for playing the 2021 re-release
content:
o Copy the quakespasm exe to your rerelease installation.
o Extract the localization folder from QuakeEX.kpf (which is actually
a zip file), and place it in the rerelease directory. Linux (Unix)
users can do the following, for example:
unzip QuakeEX.kpf localization/loc_english.txt
o Run quakespasm as you normally do.
content: Copy the quakespasm binary to your rerelease installation and
run quakespasm as you normally do.
6. Changes
5. Changes
6.1. Changes in 0.94.0
5.1. Changes in 0.94.0
o Initial support for playing the 'Quake 2021 re-release' content
(thanks to Andrei Drexler for bulk of the work.)
(thanks to Andrei Drexler for bulk of the work, Guillaume Plourde
for Q64 bsp format support.)
o Fix rendering bug when cl_bobcycle was set to zero (sf.net bug/41)
@ -284,6 +275,11 @@
o OpenGL: merged surface mark & cull optimizations from vkQuake.
o Compensate viewmodel distortion at fov > 90 (based on code from
Qrack, thanks to Andrei Drexler for the patch.)
o Raised MAX_GLTEXTURES limit from 2048 to 4096 for now.
o Changed 'model has a skin taller than 480' error into a warning
o Reject lit files if they're the wrong size (eg hipnotic/start.bsp
@ -312,7 +308,7 @@
o Source repository moved to git.
6.2. Changes in 0.93.2
5.2. Changes in 0.93.2
o Lightmaps are now dynamically allocated (from QSS), and
BLOCK_WIDTH/HEIGHT raised from 128 to 256.
@ -332,7 +328,7 @@
o Update the third-party libraries. Other fixes/cleanups.
6.3. Changes in 0.93.1
5.3. Changes in 0.93.1
o Fixed a fog regression which was introduced in 0.93.0.
@ -350,7 +346,7 @@
o Update the third-party libraries. Other fixes/cleanups.
6.4. Changes in 0.93.0
5.4. Changes in 0.93.0
o Raise default "joy_deadzone_trigger" cvar to 0.2.
@ -435,7 +431,7 @@
o Update the third-party libraries.
6.5. Changes in 0.92.1
5.5. Changes in 0.92.1
o Fixed large menu scale factors (was broken in 0.92.0).
@ -444,7 +440,7 @@
o Updated some of the third-party libraries.
6.6. Changes in 0.92.0
5.6. Changes in 0.92.0
o SDL2 Game Controller support.
@ -481,9 +477,9 @@
o Updated some of the third-party libraries. Other fixes/clean-ups.
6.7. Changes in 0.91.0
5.7. Changes in 0.91.0
6.7.1. Bugfixes
5.7.1. Bugfixes
o Fix unwanted fog mode change upon video restart.
@ -519,7 +515,7 @@
o Prevent a possible vulnerability in MSG_ReadString (old Q1/Q2 bug).
6.7.2. Visual improvements
5.7.2. Visual improvements
o New cvars r_lavaalpha, r_slimealpha, r_telealpha for fine-tuning
specific liquid opacities (from DirectQ/RMQEngine, non-archived,
@ -530,18 +526,18 @@
o GLSL gamma is now supported on older hardware without NPOT
extension.
6.7.3. Interface improvements
5.7.3. Interface improvements
o New r_pos command to show player position.
o NaN detection in traceline with "developer 1" set now warns instead
of errors.
6.7.4. Code cleanup / Other
5.7.4. Code cleanup / Other
o Update third-party libraries.
6.7.5. Raised limits
5.7.5. Raised limits
o Default max_edicts 8192 (was 2048) and no longer saved to
config.cfg.
@ -553,9 +549,9 @@
o Raised MAX_SFX to 1024 (was 512).
6.8. Changes in 0.90.1
5.8. Changes in 0.90.1
6.8.1. Bugfixes
5.8.1. Bugfixes
o Fix dynamic light artifact where changing lightmap are rendered one
frame late (bug introduced in 0.90.0).
@ -578,13 +574,13 @@
o Fix crash on out-of-bounds skin number.
6.8.2. Performance
5.8.2. Performance
o Use multithreaded OpenGL on OS X for better performance.
o New, faster mdl renderer using GLSL. Disable with "-noglslalias".
6.8.3. Visual improvements
5.8.3. Visual improvements
o New gamma correction implementation using GLSL. Fixes all known
gamma issues (affecting the full display, persisting after
@ -598,7 +594,7 @@
o r_noshadow_list cvar added (from MarkV.)
6.8.4. Interface improvements
5.8.4. Interface improvements
o Support pausing demo playback with the "pause" command.
@ -615,14 +611,14 @@
"trying to load ent", "bad chunk length", "meshing",
"PR_AlocStringSlots: realloc'ing"
6.8.5. Code cleanup
5.8.5. Code cleanup
o Clean up IDE project files to build on fresh systems.
o Update 3rd-party libraries.
6.9. Changes in 0.90.0
5.9. Changes in 0.90.0
o Fix issues on Windows systems with DPI scaling.
@ -730,7 +726,7 @@
o Other fixes and clean-ups.
6.10. Changes in 0.85.9
5.10. Changes in 0.85.9
o Fixes for several undefined behaviors in C code (gcc-4.8 support.)
@ -777,7 +773,7 @@
o Several other minor fixes/cleanups.
6.11. Changes in 0.85.8
5.11. Changes in 0.85.8
o Made Quake shareware 1.00 and 1.01 versions to be recognized
properly.
@ -824,7 +820,7 @@
o Miscellaneous source code cleanups.
6.12. Changes in 0.85.7
5.12. Changes in 0.85.7
o Added support for cross-level demo playback
@ -850,7 +846,7 @@
o Several other small changes mostly invisible to the end-user
6.13. Changes in 0.85.6
5.13. Changes in 0.85.6
o More work for string buffer safety
@ -863,7 +859,7 @@
o Minor SDL video fixes.
6.14. Changes in 0.85.5
5.14. Changes in 0.85.5
o SDL input driver updated adding native keymap and dead key support
to the console
@ -894,7 +890,7 @@
o Several code updates from uHexen2 project, several code cleanups.
6.15. Changes in 0.85.4
5.15. Changes in 0.85.4
o Implement music (OGG, MP3, WAV) playback
@ -922,7 +918,7 @@
o Other minor sound and cdaudio updates
6.16. Changes in 0.85.3
5.16. Changes in 0.85.3
o Fix the "-dedicated" option (thanks Oz) and add platform specific
networking code (default) rather than SDL_net
@ -959,7 +955,7 @@
some other CD tweaks.
6.17. Changes in 0.85.2
5.17. Changes in 0.85.2
o Replace the old "Screen size" slider with a "Scale" slider
@ -987,7 +983,7 @@
o Add OSX Makefile (tested?)
6.18. Changes in 0.85.1
5.18. Changes in 0.85.1
o 64 bit CPU support
@ -1025,7 +1021,7 @@
r_wateralpha, r_dynamic, r_novis
7. Copyright
6. Copyright
o Quake and Quakespasm are released under the GNU GENERAL PUBLIC
LICENSE Version 2: http://www.gnu.org/licenses/gpl-2.0.html
@ -1035,7 +1031,7 @@
http://creativecommons.org/licenses/by/3.0/legalcode
8. Contact
7. Contact
o QuakeSpasm Project page:
https://sourceforge.net/projects/quakespasm/
@ -1048,7 +1044,7 @@
Sander <mailto:gmail - dot - com - username - a.h.vandijk>
9. Links
8. Links
o QuakeSpasm Homepage: http://quakespasm.sourceforge.net

View file

@ -189,6 +189,21 @@
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\menu.h" />
<Unit filename="..\..\Quake\mdfour.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\fs_zip.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\snd_voip.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\pr_ext.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\r_part_fte.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\modelgen.h" />
<Unit filename="..\..\Quake\net.h" />
<Unit filename="..\..\Quake\net_defs.h" />

View file

@ -188,6 +188,21 @@
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\menu.h" />
<Unit filename="..\..\Quake\mdfour.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\fs_zip.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\snd_voip.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\pr_ext.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\r_part_fte.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\Quake\modelgen.h" />
<Unit filename="..\..\Quake\net.h" />
<Unit filename="..\..\Quake\net_defs.h" />