mirror of
https://github.com/Shpoike/Quakespasm.git
synced 2024-11-10 07:21:58 +00:00
Merge remote-tracking branch 'sf/master' into qss
This commit is contained in:
commit
32015ef1e3
11 changed files with 260 additions and 188 deletions
|
@ -3,7 +3,7 @@
|
|||
<title>QuakeSpasm
|
||||
<toc>
|
||||
|
||||
<em>Page last edited: Sep. 2021</em>
|
||||
<em>Page last edited: October 2021</em>
|
||||
|
||||
<sect> About <p>
|
||||
|
||||
|
@ -140,6 +140,15 @@ QuakeSpasm 0.94.0 has initial support for playing the 2021 re-release content: C
|
|||
|
||||
<sect> Changes<p>
|
||||
|
||||
<sect1> Changes in 0.94.2<p>
|
||||
<itemize>
|
||||
<item> 2021 rerelease: Support for playing the latest update.
|
||||
<item> 2021 rerelease: Fix pitch black models in lit areas in DOTM.
|
||||
<item> 2021 rerelease: Fix black candles in the DOTM start map.
|
||||
<item> 2021 rerelease: Look for QuakeEX.kpf under userdir, too.
|
||||
</itemize>
|
||||
</p>
|
||||
|
||||
<sect1> Changes in 0.94.1<p>
|
||||
<itemize>
|
||||
<item> Fix lightmap issues after vkQuake surface mark/cull optimizations merge (sf.net bug/50)
|
||||
|
@ -307,7 +316,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
<itemize>
|
||||
<item> Fix dynamic light artifact where changing lightmap are rendered one frame late (bug introduced in 0.90.0).
|
||||
<item> Fix texture memory leak when changing video modes with SDL2.
|
||||
<item> Fix rare incorrect mdl lighting on 64-bit builds. <url url="http://forums.insideqc.com/viewtopic.php?f=3&t=5620" name="(details here.)">
|
||||
<item> Fix a rare incorrect mdl lighting on 64-bit builds. <url url="http://forums.insideqc.com/viewtopic.php?f=3&t=5620" name="(details here.)">
|
||||
<item> Fix fullbrights turning black after "kill" command (bug introduced in 0.90.0).
|
||||
<item> Clear all fog values on map change to prevent colored fog carrying over to jam3_tronyn.bsp.
|
||||
<item> Allow loading saves with } character in quoted strings, fixes issue with retrojam1_skacky.bsp.
|
||||
|
|
Binary file not shown.
|
@ -17,7 +17,7 @@
|
|||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.94.1</string>
|
||||
<string>0.94.2</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
|
|
|
@ -2135,7 +2135,6 @@ static int COM_FindFile (const char *filename, int *handle, FILE **file,
|
|||
&& strcmp(ext, "ent") != 0)
|
||||
Con_DPrintf ("FindFile: can't find %s\n", filename);
|
||||
else Con_DPrintf2("FindFile: can't find %s\n", filename);
|
||||
// Log pcx, tga, lit, ent misses only if (developer.value >= 2)
|
||||
|
||||
if (handle)
|
||||
*handle = -1;
|
||||
|
@ -2934,7 +2933,6 @@ void COM_ResetGameDirectories(char *newgamedirs)
|
|||
//==============================================================================
|
||||
//johnfitz -- dynamic gamedir stuff -- modified by QuakeSpasm team.
|
||||
//==============================================================================
|
||||
void ExtraMaps_NewGame (void);
|
||||
static void COM_Game_f (void)
|
||||
{
|
||||
if (Cmd_Argc() > 1)
|
||||
|
@ -3115,7 +3113,10 @@ void COM_InitFilesystem (void) //johnfitz -- modified based on topaz's tutorial
|
|||
|
||||
//this is horrible.
|
||||
if (!fitzmode)
|
||||
{
|
||||
if (!COM_AddPackage(NULL, va("%s/QuakeEX.kpf", host_parms->userdir), "QuakeEX.kpf") && strcmp(com_basedir, host_parms->userdir))
|
||||
COM_AddPackage(NULL, va("%s/QuakeEX.kpf", com_basedir), "QuakeEX.kpf");
|
||||
}
|
||||
|
||||
i = COM_CheckParmNext (i, "-basegame");
|
||||
if (i)
|
||||
|
|
|
@ -302,7 +302,7 @@ vec3_t lightcolor; //johnfitz -- lit support via lordhavoc
|
|||
RecursiveLightPoint -- johnfitz -- replaced entire function for lit support via lordhavoc
|
||||
=============
|
||||
*/
|
||||
int RecursiveLightPoint (vec3_t color, mnode_t *node, vec3_t start, vec3_t end)
|
||||
int RecursiveLightPoint (vec3_t color, mnode_t *node, vec3_t rayorg, vec3_t start, vec3_t end, float *maxdist)
|
||||
{
|
||||
float front, back, frac;
|
||||
vec3_t mid;
|
||||
|
@ -325,7 +325,7 @@ loc0:
|
|||
|
||||
// LordHavoc: optimized recursion
|
||||
if ((back < 0) == (front < 0))
|
||||
// return RecursiveLightPoint (color, node->children[front < 0], start, end);
|
||||
// return RecursiveLightPoint (color, node->children[front < 0], rayorg, start, end, maxdist);
|
||||
{
|
||||
node = node->children[front < 0];
|
||||
goto loc0;
|
||||
|
@ -337,7 +337,7 @@ loc0:
|
|||
mid[2] = start[2] + (end[2] - start[2])*frac;
|
||||
|
||||
// go down front side
|
||||
if (RecursiveLightPoint (color, node->children[front < 0], start, mid))
|
||||
if (RecursiveLightPoint (color, node->children[front < 0], rayorg, start, mid, maxdist))
|
||||
return true; // hit something
|
||||
else
|
||||
{
|
||||
|
@ -351,6 +351,9 @@ loc0:
|
|||
surf = cl.worldmodel->surfaces + node->firstsurface;
|
||||
for (i = 0;i < node->numsurfaces;i++, surf++)
|
||||
{
|
||||
float sfront, sback, dist;
|
||||
vec3_t raydelta;
|
||||
|
||||
if (surf->flags & SURF_DRAWTILED)
|
||||
continue; // no lightmaps
|
||||
|
||||
|
@ -369,7 +372,32 @@ loc0:
|
|||
if (ds > surf->extents[0] || dt > surf->extents[1])
|
||||
continue;
|
||||
|
||||
if (surf->samples)
|
||||
if (surf->plane->type < 3)
|
||||
{
|
||||
sfront = rayorg[surf->plane->type] - surf->plane->dist;
|
||||
sback = end[surf->plane->type] - surf->plane->dist;
|
||||
}
|
||||
else
|
||||
{
|
||||
sfront = DotProduct(rayorg, surf->plane->normal) - surf->plane->dist;
|
||||
sback = DotProduct(end, surf->plane->normal) - surf->plane->dist;
|
||||
}
|
||||
VectorSubtract(end, rayorg, raydelta);
|
||||
dist = sfront / (sfront - sback) * VectorLength(raydelta);
|
||||
|
||||
if (!surf->samples)
|
||||
{
|
||||
// We hit a surface that is flagged as lightmapped, but doesn't have actual lightmap info.
|
||||
// Instead of just returning black, we'll keep looking for nearby surfaces that do have valid samples.
|
||||
// This fixes occasional pitch-black models in otherwise well-lit areas in DOTM (e.g. mge1m1, mge4m1)
|
||||
// caused by overlapping surfaces with mixed lighting data.
|
||||
const float nearby = 8.f;
|
||||
dist += nearby;
|
||||
*maxdist = q_min(*maxdist, dist);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (dist < *maxdist)
|
||||
{
|
||||
// LordHavoc: enhanced to interpolate lighting
|
||||
byte *lightmap;
|
||||
|
@ -397,7 +425,7 @@ loc0:
|
|||
}
|
||||
|
||||
// go down back side
|
||||
return RecursiveLightPoint (color, node->children[front >= 0], mid, end);
|
||||
return RecursiveLightPoint (color, node->children[front >= 0], rayorg, mid, end, maxdist);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -409,6 +437,7 @@ R_LightPoint -- johnfitz -- replaced entire function for lit support via lordhav
|
|||
int R_LightPoint (vec3_t p)
|
||||
{
|
||||
vec3_t end;
|
||||
float maxdist = 8192.f; //johnfitz -- was 2048
|
||||
|
||||
if (!cl.worldmodel->lightdata)
|
||||
{
|
||||
|
@ -418,9 +447,9 @@ int R_LightPoint (vec3_t p)
|
|||
|
||||
end[0] = p[0];
|
||||
end[1] = p[1];
|
||||
end[2] = p[2] - 8192; //johnfitz -- was 2048
|
||||
end[2] = p[2] - maxdist;
|
||||
|
||||
lightcolor[0] = lightcolor[1] = lightcolor[2] = 0;
|
||||
RecursiveLightPoint (lightcolor, cl.worldmodel->nodes, p, end);
|
||||
RecursiveLightPoint (lightcolor, cl.worldmodel->nodes, p, p, end, &maxdist);
|
||||
return ((lightcolor[0] + lightcolor[1] + lightcolor[2]) * (1.0f / 3.0f));
|
||||
}
|
||||
|
|
111
Quake/host_cmd.c
111
Quake/host_cmd.c
|
@ -37,7 +37,6 @@ void Mod_Print (void);
|
|||
Host_Quit_f
|
||||
==================
|
||||
*/
|
||||
|
||||
void Host_Quit_f (void)
|
||||
{
|
||||
if (key_dest != key_console && cls.state != ca_dedicated && !cls.menu_qcvm.progs)
|
||||
|
@ -60,7 +59,7 @@ void Host_Quit_f (void)
|
|||
FileList_Add
|
||||
==================
|
||||
*/
|
||||
void FileList_Add (const char *name, filelist_item_t **list)
|
||||
static void FileList_Add (const char *name, filelist_item_t **list)
|
||||
{
|
||||
filelist_item_t *item,*cursor,*prev;
|
||||
|
||||
|
@ -109,7 +108,7 @@ static void FileList_Clear (filelist_item_t **list)
|
|||
|
||||
filelist_item_t *extralevels;
|
||||
|
||||
void ExtraMaps_Add (const char *name)
|
||||
static void ExtraMaps_Add (const char *name)
|
||||
{
|
||||
FileList_Add(name, &extralevels);
|
||||
}
|
||||
|
@ -200,7 +199,7 @@ void ExtraMaps_NewGame (void)
|
|||
Host_Maps_f
|
||||
==================
|
||||
*/
|
||||
void Host_Maps_f (void)
|
||||
static void Host_Maps_f (void)
|
||||
{
|
||||
int i;
|
||||
filelist_item_t *level;
|
||||
|
@ -220,7 +219,7 @@ void Host_Maps_f (void)
|
|||
|
||||
filelist_item_t *modlist;
|
||||
|
||||
void Modlist_Add (const char *name)
|
||||
static void Modlist_Add (const char *name)
|
||||
{
|
||||
FileList_Add(name, &modlist);
|
||||
}
|
||||
|
@ -368,7 +367,6 @@ void DemoList_Init (void)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
==================
|
||||
Host_Mods_f -- johnfitz
|
||||
|
@ -376,7 +374,7 @@ Host_Mods_f -- johnfitz
|
|||
list all potential mod directories (contain either a pak file or a progs.dat)
|
||||
==================
|
||||
*/
|
||||
void Host_Mods_f (void)
|
||||
static void Host_Mods_f (void)
|
||||
{
|
||||
int i;
|
||||
filelist_item_t *mod;
|
||||
|
@ -397,7 +395,7 @@ void Host_Mods_f (void)
|
|||
Host_Mapname_f -- johnfitz
|
||||
=============
|
||||
*/
|
||||
void Host_Mapname_f (void)
|
||||
static void Host_Mapname_f (void)
|
||||
{
|
||||
if (sv.active)
|
||||
{
|
||||
|
@ -419,7 +417,7 @@ void Host_Mapname_f (void)
|
|||
Host_Status_f
|
||||
==================
|
||||
*/
|
||||
void Host_Status_f (void)
|
||||
static void Host_Status_f (void)
|
||||
{
|
||||
void (*print_fn) (const char *fmt, ...)
|
||||
FUNCP_PRINTF(1,2);
|
||||
|
@ -518,7 +516,7 @@ Host_God_f
|
|||
Sets client to godmode
|
||||
==================
|
||||
*/
|
||||
void Host_God_f (void)
|
||||
static void Host_God_f (void)
|
||||
{
|
||||
if (cmd_source != src_client)
|
||||
{
|
||||
|
@ -563,7 +561,7 @@ void Host_God_f (void)
|
|||
Host_Notarget_f
|
||||
==================
|
||||
*/
|
||||
void Host_Notarget_f (void)
|
||||
static void Host_Notarget_f (void)
|
||||
{
|
||||
if (cmd_source != src_client)
|
||||
{
|
||||
|
@ -610,7 +608,7 @@ qboolean noclip_anglehack;
|
|||
Host_Noclip_f
|
||||
==================
|
||||
*/
|
||||
void Host_Noclip_f (void)
|
||||
static void Host_Noclip_f (void)
|
||||
{
|
||||
if (cmd_source != src_client)
|
||||
{
|
||||
|
@ -666,7 +664,7 @@ Host_SetPos_f
|
|||
adapted from fteqw, originally by Alex Shadowalker
|
||||
====================
|
||||
*/
|
||||
void Host_SetPos_f(void)
|
||||
static void Host_SetPos_f(void)
|
||||
{
|
||||
if (cmd_source != src_client)
|
||||
{
|
||||
|
@ -727,7 +725,7 @@ Host_Fly_f
|
|||
Sets client to flymode
|
||||
==================
|
||||
*/
|
||||
void Host_Fly_f (void)
|
||||
static void Host_Fly_f (void)
|
||||
{
|
||||
if (cmd_source != src_client)
|
||||
{
|
||||
|
@ -772,14 +770,13 @@ void Host_Fly_f (void)
|
|||
//johnfitz
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
==================
|
||||
Host_Ping_f
|
||||
|
||||
==================
|
||||
*/
|
||||
void Host_Ping_f (void)
|
||||
static void Host_Ping_f (void)
|
||||
{
|
||||
int i, j;
|
||||
float total;
|
||||
|
@ -812,7 +809,6 @@ SERVER TRANSITIONS
|
|||
===============================================================================
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
======================
|
||||
Host_Map_f
|
||||
|
@ -822,7 +818,7 @@ map <servername>
|
|||
command from the console. Active clients are kicked off.
|
||||
======================
|
||||
*/
|
||||
void Host_Map_f (void)
|
||||
static void Host_Map_f (void)
|
||||
{
|
||||
int i;
|
||||
char name[MAX_QPATH], *p;
|
||||
|
@ -892,7 +888,7 @@ Host_Randmap_f
|
|||
Loads a random map from the "maps" list.
|
||||
======================
|
||||
*/
|
||||
void Host_Randmap_f (void)
|
||||
static void Host_Randmap_f (void)
|
||||
{
|
||||
int i, randlevel, numlevels;
|
||||
filelist_item_t *level;
|
||||
|
@ -929,7 +925,7 @@ Host_Changelevel_f
|
|||
Goes to a new map, taking all clients along
|
||||
==================
|
||||
*/
|
||||
void Host_Changelevel_f (void)
|
||||
static void Host_Changelevel_f (void)
|
||||
{
|
||||
char level[MAX_QPATH];
|
||||
|
||||
|
@ -971,7 +967,7 @@ Host_Restart_f
|
|||
Restarts the current server for a dead player
|
||||
==================
|
||||
*/
|
||||
void Host_Restart_f (void)
|
||||
static void Host_Restart_f (void)
|
||||
{
|
||||
char mapname[MAX_QPATH];
|
||||
|
||||
|
@ -1003,7 +999,7 @@ This is sent just before a server changes levels
|
|||
for compatibility with quakeworld et al, we also allow this as a user-command to reconnect to the last server we tried, but we can only reliably do that when we're not already connected
|
||||
==================
|
||||
*/
|
||||
void Host_Reconnect_Con_f (void)
|
||||
static void Host_Reconnect_Con_f (void)
|
||||
{
|
||||
CL_Disconnect_f();
|
||||
cls.demonum = -1; // stop demo loop in case this fails
|
||||
|
@ -1014,7 +1010,7 @@ void Host_Reconnect_Con_f (void)
|
|||
}
|
||||
CL_EstablishConnection (NULL);
|
||||
}
|
||||
void Host_Reconnect_Sv_f (void)
|
||||
static void Host_Reconnect_Sv_f (void)
|
||||
{
|
||||
if (cls.demoplayback) // cross-map demo playback fix from Baker
|
||||
return;
|
||||
|
@ -1024,7 +1020,7 @@ void Host_Reconnect_Sv_f (void)
|
|||
cls.signon = 0; // need new connection messages
|
||||
}
|
||||
|
||||
void Host_Lightstyle_f (void)
|
||||
static void Host_Lightstyle_f (void)
|
||||
{
|
||||
CL_UpdateLightstyle(atoi(Cmd_Argv(1)), Cmd_Argv(2));
|
||||
}
|
||||
|
@ -1036,7 +1032,7 @@ Host_Connect_f
|
|||
User command to connect to server
|
||||
=====================
|
||||
*/
|
||||
void Host_Connect_f (void)
|
||||
static void Host_Connect_f (void)
|
||||
{
|
||||
char name[MAX_QPATH];
|
||||
|
||||
|
@ -1069,7 +1065,7 @@ Host_SavegameComment
|
|||
Writes a SAVEGAME_COMMENT_LENGTH character comment describing the current
|
||||
===============
|
||||
*/
|
||||
void Host_SavegameComment (char *text)
|
||||
static void Host_SavegameComment (char *text)
|
||||
{
|
||||
int i;
|
||||
char kills[20];
|
||||
|
@ -1099,13 +1095,12 @@ void Host_SavegameComment (char *text)
|
|||
text[SAVEGAME_COMMENT_LENGTH] = '\0';
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
===============
|
||||
Host_Savegame_f
|
||||
===============
|
||||
*/
|
||||
void Host_Savegame_f (void)
|
||||
static void Host_Savegame_f (void)
|
||||
{
|
||||
char name[MAX_OSPATH];
|
||||
FILE *f;
|
||||
|
@ -1177,7 +1172,6 @@ void Host_Savegame_f (void)
|
|||
fprintf (f, "%f\n", qcvm->time);
|
||||
|
||||
// write the light styles
|
||||
|
||||
for (i = 0; i < MAX_LIGHTSTYLES_VANILLA; i++)
|
||||
{
|
||||
if (sv.lightstyles[i])
|
||||
|
@ -1186,7 +1180,6 @@ void Host_Savegame_f (void)
|
|||
fprintf (f,"m\n");
|
||||
}
|
||||
|
||||
|
||||
ED_WriteGlobals (f);
|
||||
for (i = 0; i < qcvm->num_edicts; i++)
|
||||
{
|
||||
|
@ -1235,13 +1228,12 @@ void Host_Savegame_f (void)
|
|||
PR_SwitchQCVM(NULL);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
===============
|
||||
Host_Loadgame_f
|
||||
===============
|
||||
*/
|
||||
void Host_Loadgame_f (void)
|
||||
static void Host_Loadgame_f (void)
|
||||
{
|
||||
static char *start;
|
||||
|
||||
|
@ -1480,7 +1472,7 @@ void Host_Loadgame_f (void)
|
|||
Host_Name_f
|
||||
======================
|
||||
*/
|
||||
void Host_Name_f (void)
|
||||
static void Host_Name_f (void)
|
||||
{
|
||||
char newName[32];
|
||||
|
||||
|
@ -1505,7 +1497,7 @@ void Host_Name_f (void)
|
|||
SV_UpdateInfo((host_client-svs.clients)+1, "name", newName);
|
||||
}
|
||||
|
||||
void Host_Say(qboolean teamonly)
|
||||
static void Host_Say(qboolean teamonly)
|
||||
{
|
||||
int j;
|
||||
client_t *client;
|
||||
|
@ -1582,20 +1574,17 @@ void Host_Say(qboolean teamonly)
|
|||
Sys_Printf("%s", &text[1]);
|
||||
}
|
||||
|
||||
|
||||
void Host_Say_f(void)
|
||||
static void Host_Say_f(void)
|
||||
{
|
||||
Host_Say(false);
|
||||
}
|
||||
|
||||
|
||||
void Host_Say_Team_f(void)
|
||||
static void Host_Say_Team_f(void)
|
||||
{
|
||||
Host_Say(true);
|
||||
}
|
||||
|
||||
|
||||
void Host_Tell_f(void)
|
||||
static void Host_Tell_f(void)
|
||||
{
|
||||
int j;
|
||||
client_t *client;
|
||||
|
@ -1659,13 +1648,12 @@ void Host_Tell_f(void)
|
|||
host_client = save;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
==================
|
||||
Host_Color_f
|
||||
==================
|
||||
*/
|
||||
void Host_Color_f(void)
|
||||
static void Host_Color_f(void)
|
||||
{
|
||||
const char *top, *bottom;
|
||||
|
||||
|
@ -1702,7 +1690,7 @@ void Host_Color_f(void)
|
|||
Host_Kill_f
|
||||
==================
|
||||
*/
|
||||
void Host_Kill_f (void)
|
||||
static void Host_Kill_f (void)
|
||||
{
|
||||
if (cmd_source != src_client)
|
||||
{
|
||||
|
@ -1721,13 +1709,12 @@ void Host_Kill_f (void)
|
|||
PR_ExecuteProgram (pr_global_struct->ClientKill);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
==================
|
||||
Host_Pause_f
|
||||
==================
|
||||
*/
|
||||
void Host_Pause_f (void)
|
||||
static void Host_Pause_f (void)
|
||||
{
|
||||
//ericw -- demo pause support (inspired by MarkV)
|
||||
if (cls.demoplayback)
|
||||
|
@ -1765,13 +1752,12 @@ void Host_Pause_f (void)
|
|||
|
||||
//===========================================================================
|
||||
|
||||
|
||||
/*
|
||||
==================
|
||||
Host_PreSpawn_f
|
||||
==================
|
||||
*/
|
||||
void Host_PreSpawn_f (void)
|
||||
static void Host_PreSpawn_f (void)
|
||||
{
|
||||
if (cmd_source != src_client)
|
||||
{
|
||||
|
@ -1795,7 +1781,7 @@ void Host_PreSpawn_f (void)
|
|||
Host_Spawn_f
|
||||
==================
|
||||
*/
|
||||
void Host_Spawn_f (void)
|
||||
static void Host_Spawn_f (void)
|
||||
{
|
||||
int i;
|
||||
client_t *client;
|
||||
|
@ -1854,7 +1840,6 @@ void Host_Spawn_f (void)
|
|||
PR_ExecuteProgram (pr_global_struct->PutClientInServer);
|
||||
}
|
||||
|
||||
|
||||
// send all current names, colors, and frag counts
|
||||
SZ_Clear (&host_client->message);
|
||||
|
||||
|
@ -1952,7 +1937,7 @@ void Host_Spawn_f (void)
|
|||
Host_Begin_f
|
||||
==================
|
||||
*/
|
||||
void Host_Begin_f (void)
|
||||
static void Host_Begin_f (void)
|
||||
{
|
||||
if (cmd_source != src_client)
|
||||
{
|
||||
|
@ -1965,7 +1950,6 @@ void Host_Begin_f (void)
|
|||
|
||||
//===========================================================================
|
||||
|
||||
|
||||
/*
|
||||
==================
|
||||
Host_Kick_f
|
||||
|
@ -1973,7 +1957,7 @@ Host_Kick_f
|
|||
Kicks a user off of the server
|
||||
==================
|
||||
*/
|
||||
void Host_Kick_f (void)
|
||||
static void Host_Kick_f (void)
|
||||
{
|
||||
const char *who;
|
||||
const char *message = NULL;
|
||||
|
@ -2065,7 +2049,7 @@ DEBUGGING TOOLS
|
|||
Host_Give_f
|
||||
==================
|
||||
*/
|
||||
void Host_Give_f (void)
|
||||
static void Host_Give_f (void)
|
||||
{
|
||||
const char *t;
|
||||
int v;
|
||||
|
@ -2290,7 +2274,7 @@ void Host_Give_f (void)
|
|||
//johnfitz
|
||||
}
|
||||
|
||||
edict_t *FindViewthing (void)
|
||||
static edict_t *FindViewthing (void)
|
||||
{
|
||||
int i;
|
||||
edict_t *e = NULL;
|
||||
|
@ -2333,7 +2317,7 @@ edict_t *FindViewthing (void)
|
|||
Host_Viewmodel_f
|
||||
==================
|
||||
*/
|
||||
void Host_Viewmodel_f (void)
|
||||
static void Host_Viewmodel_f (void)
|
||||
{
|
||||
edict_t *e;
|
||||
qmodel_t *m;
|
||||
|
@ -2366,7 +2350,7 @@ void Host_Viewmodel_f (void)
|
|||
Host_Viewframe_f
|
||||
==================
|
||||
*/
|
||||
void Host_Viewframe_f (void)
|
||||
static void Host_Viewframe_f (void)
|
||||
{
|
||||
edict_t *e;
|
||||
int f;
|
||||
|
@ -2386,8 +2370,7 @@ void Host_Viewframe_f (void)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
void PrintFrameName (qmodel_t *m, int frame)
|
||||
static void PrintFrameName (qmodel_t *m, int frame)
|
||||
{
|
||||
aliashdr_t *hdr;
|
||||
maliasframedesc_t *pframedesc;
|
||||
|
@ -2405,7 +2388,7 @@ void PrintFrameName (qmodel_t *m, int frame)
|
|||
Host_Viewnext_f
|
||||
==================
|
||||
*/
|
||||
void Host_Viewnext_f (void)
|
||||
static void Host_Viewnext_f (void)
|
||||
{
|
||||
edict_t *e;
|
||||
qmodel_t *m;
|
||||
|
@ -2429,7 +2412,7 @@ void Host_Viewnext_f (void)
|
|||
Host_Viewprev_f
|
||||
==================
|
||||
*/
|
||||
void Host_Viewprev_f (void)
|
||||
static void Host_Viewprev_f (void)
|
||||
{
|
||||
edict_t *e;
|
||||
qmodel_t *m;
|
||||
|
@ -2457,13 +2440,12 @@ DEMO LOOP CONTROL
|
|||
===============================================================================
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
==================
|
||||
Host_Startdemos_f
|
||||
==================
|
||||
*/
|
||||
void Host_Startdemos_f (void)
|
||||
static void Host_Startdemos_f (void)
|
||||
{
|
||||
int i, c;
|
||||
|
||||
|
@ -2499,7 +2481,6 @@ void Host_Startdemos_f (void)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
==================
|
||||
Host_Demos_f
|
||||
|
@ -2507,7 +2488,7 @@ Host_Demos_f
|
|||
Return to looping demos
|
||||
==================
|
||||
*/
|
||||
void Host_Demos_f (void)
|
||||
static void Host_Demos_f (void)
|
||||
{
|
||||
if (cls.state == ca_dedicated)
|
||||
return;
|
||||
|
@ -2524,7 +2505,7 @@ Host_Stopdemo_f
|
|||
Return to looping demos
|
||||
==================
|
||||
*/
|
||||
void Host_Stopdemo_f (void)
|
||||
static void Host_Stopdemo_f (void)
|
||||
{
|
||||
if (cls.state == ca_dedicated)
|
||||
return;
|
||||
|
|
|
@ -1788,6 +1788,7 @@ PF_finalefinished -- used by 2021 release.
|
|||
*/
|
||||
static void PF_finalefinished (void)
|
||||
{
|
||||
G_FLOAT(OFS_RETURN) = 0;
|
||||
}
|
||||
|
||||
void PR_spawnfunc_misc_model(edict_t *self)
|
||||
|
@ -1901,7 +1902,20 @@ builtin_t pr_ssqcbuiltins[] =
|
|||
PF_sv_setspawnparms,
|
||||
|
||||
// 2021 release
|
||||
PF_finalefinished, // void() finaleFinished = #79
|
||||
PF_finalefinished, // float() finaleFinished = #79
|
||||
PF_Fixme, // void localsound (entity client, string sample) = #80
|
||||
PF_Fixme, // void draw_point (vector point, float colormap, float lifetime, float depthtest) = #81
|
||||
PF_Fixme, // void draw_line (vector start, vector end, float colormap, float lifetime, float depthtest) = #82
|
||||
PF_Fixme, // void draw_arrow (vector start, vector end, float colormap, float size, float lifetime, float depthtest) = #83
|
||||
PF_Fixme, // void draw_ray (vector start, vector direction, float length, float colormap, float size, float lifetime, float depthtest) = #84
|
||||
PF_Fixme, // void draw_circle (vector origin, float radius, float colormap, float lifetime, float depthtest) = #85
|
||||
PF_Fixme, // void draw_bounds (vector min, vector max, float colormap, float lifetime, float depthtest) = #86
|
||||
PF_Fixme, // void draw_worldtext (string s, vector origin, float size, float lifetime, float depthtest) = #87
|
||||
PF_Fixme, // void draw_sphere (vector origin, float radius, float colormap, float lifetime, float depthtest) = #88
|
||||
PF_Fixme, // void draw_cylinder (vector origin, float halfHeight, float radius, float colormap, float lifetime, float depthtest) = #89
|
||||
PF_centerprint , // #90
|
||||
PF_bprint,
|
||||
PF_sprint,
|
||||
};
|
||||
int pr_ssqcnumbuiltins = sizeof(pr_ssqcbuiltins)/sizeof(pr_ssqcbuiltins[0]);
|
||||
|
||||
|
|
|
@ -37,7 +37,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|||
|
||||
#define FITZQUAKE_VERSION 0.85 //johnfitz
|
||||
#define QUAKESPASM_VERSION 0.94
|
||||
#define QUAKESPASM_VER_PATCH 1 // helper to print a string like 0.94.1
|
||||
#define QUAKESPASM_VER_PATCH 2 // helper to print a string like 0.94.2
|
||||
#ifndef QUAKESPASM_VER_SUFFIX
|
||||
#define QUAKESPASM_VER_SUFFIX // optional version suffix string literal like "-beta1"
|
||||
#endif
|
||||
|
@ -353,6 +353,7 @@ void ExtraMaps_Init (void);
|
|||
void Modlist_Init (void);
|
||||
void DemoList_Init (void);
|
||||
|
||||
void ExtraMaps_NewGame (void);
|
||||
void DemoList_Rebuild (void);
|
||||
|
||||
extern int current_skill; // skill level for currently loaded level (in case
|
||||
|
|
|
@ -945,15 +945,29 @@ void R_SetupAliasLighting (entity_t *e)
|
|||
int i;
|
||||
int quantizedangle;
|
||||
float radiansangle;
|
||||
float *origin = e->origin;
|
||||
float *origin;
|
||||
|
||||
if (!r_refdef.drawworld)
|
||||
lightcolor[0] = lightcolor[1] = lightcolor[2] = 255;
|
||||
else
|
||||
{
|
||||
if (e->eflags & EFLAGS_VIEWMODEL)
|
||||
{
|
||||
origin = r_refdef.vieworg;
|
||||
R_LightPoint (origin);
|
||||
}
|
||||
else
|
||||
{
|
||||
vec3_t lpos;
|
||||
origin = e->origin;
|
||||
VectorCopy (origin, lpos);
|
||||
// start the light trace from slightly above the origin
|
||||
// this helps with models whose origin is below ground level, but are otherwise visible
|
||||
// (e.g. some of the candles in the DOTM start map, which would otherwise appear black)
|
||||
if (e->model->maxs[2] > 0)
|
||||
lpos[2] += e->model->maxs[2] * 0.5f;
|
||||
R_LightPoint (lpos);
|
||||
}
|
||||
|
||||
//add dlights
|
||||
for (i=0 ; i<MAX_DLIGHTS ; i++)
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<H1>QuakeSpasm</H1>
|
||||
|
||||
<H2></H2>
|
||||
<P><EM>Page last edited: Sep. 2021</EM></P>
|
||||
<P><EM>Page last edited: October 2021</EM></P>
|
||||
|
||||
<P>
|
||||
<H2><A NAME="toc1">1.</A> <A HREF="Quakespasm.html#s1">About </A></H2>
|
||||
|
@ -36,25 +36,26 @@
|
|||
<H2><A NAME="toc5">5.</A> <A HREF="Quakespasm.html#s5">Changes</A></H2>
|
||||
|
||||
<UL>
|
||||
<LI><A NAME="toc5.1">5.1</A> <A HREF="Quakespasm.html#ss5.1">Changes in 0.94.1</A>
|
||||
<LI><A NAME="toc5.2">5.2</A> <A HREF="Quakespasm.html#ss5.2">Changes in 0.94.0</A>
|
||||
<LI><A NAME="toc5.3">5.3</A> <A HREF="Quakespasm.html#ss5.3">Changes in 0.93.2</A>
|
||||
<LI><A NAME="toc5.4">5.4</A> <A HREF="Quakespasm.html#ss5.4">Changes in 0.93.1</A>
|
||||
<LI><A NAME="toc5.5">5.5</A> <A HREF="Quakespasm.html#ss5.5">Changes in 0.93.0</A>
|
||||
<LI><A NAME="toc5.6">5.6</A> <A HREF="Quakespasm.html#ss5.6">Changes in 0.92.1</A>
|
||||
<LI><A NAME="toc5.7">5.7</A> <A HREF="Quakespasm.html#ss5.7">Changes in 0.92.0</A>
|
||||
<LI><A NAME="toc5.8">5.8</A> <A HREF="Quakespasm.html#ss5.8">Changes in 0.91.0</A>
|
||||
<LI><A NAME="toc5.9">5.9</A> <A HREF="Quakespasm.html#ss5.9">Changes in 0.90.1</A>
|
||||
<LI><A NAME="toc5.10">5.10</A> <A HREF="Quakespasm.html#ss5.10">Changes in 0.90.0</A>
|
||||
<LI><A NAME="toc5.11">5.11</A> <A HREF="Quakespasm.html#ss5.11">Changes in 0.85.9</A>
|
||||
<LI><A NAME="toc5.12">5.12</A> <A HREF="Quakespasm.html#ss5.12">Changes in 0.85.8</A>
|
||||
<LI><A NAME="toc5.13">5.13</A> <A HREF="Quakespasm.html#ss5.13">Changes in 0.85.7</A>
|
||||
<LI><A NAME="toc5.14">5.14</A> <A HREF="Quakespasm.html#ss5.14">Changes in 0.85.6</A>
|
||||
<LI><A NAME="toc5.15">5.15</A> <A HREF="Quakespasm.html#ss5.15">Changes in 0.85.5</A>
|
||||
<LI><A NAME="toc5.16">5.16</A> <A HREF="Quakespasm.html#ss5.16">Changes in 0.85.4</A>
|
||||
<LI><A NAME="toc5.17">5.17</A> <A HREF="Quakespasm.html#ss5.17">Changes in 0.85.3</A>
|
||||
<LI><A NAME="toc5.18">5.18</A> <A HREF="Quakespasm.html#ss5.18">Changes in 0.85.2</A>
|
||||
<LI><A NAME="toc5.19">5.19</A> <A HREF="Quakespasm.html#ss5.19">Changes in 0.85.1</A>
|
||||
<LI><A NAME="toc5.1">5.1</A> <A HREF="Quakespasm.html#ss5.1">Changes in 0.94.2</A>
|
||||
<LI><A NAME="toc5.2">5.2</A> <A HREF="Quakespasm.html#ss5.2">Changes in 0.94.1</A>
|
||||
<LI><A NAME="toc5.3">5.3</A> <A HREF="Quakespasm.html#ss5.3">Changes in 0.94.0</A>
|
||||
<LI><A NAME="toc5.4">5.4</A> <A HREF="Quakespasm.html#ss5.4">Changes in 0.93.2</A>
|
||||
<LI><A NAME="toc5.5">5.5</A> <A HREF="Quakespasm.html#ss5.5">Changes in 0.93.1</A>
|
||||
<LI><A NAME="toc5.6">5.6</A> <A HREF="Quakespasm.html#ss5.6">Changes in 0.93.0</A>
|
||||
<LI><A NAME="toc5.7">5.7</A> <A HREF="Quakespasm.html#ss5.7">Changes in 0.92.1</A>
|
||||
<LI><A NAME="toc5.8">5.8</A> <A HREF="Quakespasm.html#ss5.8">Changes in 0.92.0</A>
|
||||
<LI><A NAME="toc5.9">5.9</A> <A HREF="Quakespasm.html#ss5.9">Changes in 0.91.0</A>
|
||||
<LI><A NAME="toc5.10">5.10</A> <A HREF="Quakespasm.html#ss5.10">Changes in 0.90.1</A>
|
||||
<LI><A NAME="toc5.11">5.11</A> <A HREF="Quakespasm.html#ss5.11">Changes in 0.90.0</A>
|
||||
<LI><A NAME="toc5.12">5.12</A> <A HREF="Quakespasm.html#ss5.12">Changes in 0.85.9</A>
|
||||
<LI><A NAME="toc5.13">5.13</A> <A HREF="Quakespasm.html#ss5.13">Changes in 0.85.8</A>
|
||||
<LI><A NAME="toc5.14">5.14</A> <A HREF="Quakespasm.html#ss5.14">Changes in 0.85.7</A>
|
||||
<LI><A NAME="toc5.15">5.15</A> <A HREF="Quakespasm.html#ss5.15">Changes in 0.85.6</A>
|
||||
<LI><A NAME="toc5.16">5.16</A> <A HREF="Quakespasm.html#ss5.16">Changes in 0.85.5</A>
|
||||
<LI><A NAME="toc5.17">5.17</A> <A HREF="Quakespasm.html#ss5.17">Changes in 0.85.4</A>
|
||||
<LI><A NAME="toc5.18">5.18</A> <A HREF="Quakespasm.html#ss5.18">Changes in 0.85.3</A>
|
||||
<LI><A NAME="toc5.19">5.19</A> <A HREF="Quakespasm.html#ss5.19">Changes in 0.85.2</A>
|
||||
<LI><A NAME="toc5.20">5.20</A> <A HREF="Quakespasm.html#ss5.20">Changes in 0.85.1</A>
|
||||
</UL>
|
||||
<P>
|
||||
<H2><A NAME="toc6">6.</A> <A HREF="Quakespasm.html#s6">Copyright </A></H2>
|
||||
|
@ -222,7 +223,18 @@ Compile time options include
|
|||
|
||||
|
||||
|
||||
<H2><A NAME="ss5.1">5.1</A> <A HREF="#toc5.1">Changes in 0.94.1</A>
|
||||
<H2><A NAME="ss5.1">5.1</A> <A HREF="#toc5.1">Changes in 0.94.2</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
<UL>
|
||||
<LI> 2021 rerelease: Support for playing the latest update.</LI>
|
||||
<LI> 2021 rerelease: Fix pitch black models in lit areas in DOTM.</LI>
|
||||
<LI> 2021 rerelease: Fix black candles in the DOTM start map.</LI>
|
||||
<LI> 2021 rerelease: Look for QuakeEX.kpf under userdir, too.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.2">5.2</A> <A HREF="#toc5.2">Changes in 0.94.1</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -230,7 +242,7 @@ Compile time options include
|
|||
<LI> Fix lightmap issues after vkQuake surface mark/cull optimizations merge (sf.net bug/50)</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.2">5.2</A> <A HREF="#toc5.2">Changes in 0.94.0</A>
|
||||
<H2><A NAME="ss5.3">5.3</A> <A HREF="#toc5.3">Changes in 0.94.0</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -255,7 +267,7 @@ Compile time options include
|
|||
<LI> Source repository moved to git.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.3">5.3</A> <A HREF="#toc5.3">Changes in 0.93.2</A>
|
||||
<H2><A NAME="ss5.4">5.4</A> <A HREF="#toc5.4">Changes in 0.93.2</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -268,7 +280,7 @@ Compile time options include
|
|||
<LI> Update the third-party libraries. Other fixes/cleanups.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.4">5.4</A> <A HREF="#toc5.4">Changes in 0.93.1</A>
|
||||
<H2><A NAME="ss5.5">5.5</A> <A HREF="#toc5.5">Changes in 0.93.1</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -282,7 +294,7 @@ Compile time options include
|
|||
<LI> Update the third-party libraries. Other fixes/cleanups.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.5">5.5</A> <A HREF="#toc5.5">Changes in 0.93.0</A>
|
||||
<H2><A NAME="ss5.6">5.6</A> <A HREF="#toc5.6">Changes in 0.93.0</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -325,7 +337,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
<LI> Update the third-party libraries.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.6">5.6</A> <A HREF="#toc5.6">Changes in 0.92.1</A>
|
||||
<H2><A NAME="ss5.7">5.7</A> <A HREF="#toc5.7">Changes in 0.92.1</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -335,7 +347,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="ss5.7">5.7</A> <A HREF="#toc5.7">Changes in 0.92.0</A>
|
||||
<H2><A NAME="ss5.8">5.8</A> <A HREF="#toc5.8">Changes in 0.92.0</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -355,7 +367,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="ss5.8">5.8</A> <A HREF="#toc5.8">Changes in 0.91.0</A>
|
||||
<H2><A NAME="ss5.9">5.9</A> <A HREF="#toc5.9">Changes in 0.91.0</A>
|
||||
</H2>
|
||||
|
||||
|
||||
|
@ -415,7 +427,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="ss5.9">5.9</A> <A HREF="#toc5.9">Changes in 0.90.1</A>
|
||||
<H2><A NAME="ss5.10">5.10</A> <A HREF="#toc5.10">Changes in 0.90.1</A>
|
||||
</H2>
|
||||
|
||||
|
||||
|
@ -425,8 +437,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
<UL>
|
||||
<LI> Fix dynamic light artifact where changing lightmap are rendered one frame late (bug introduced in 0.90.0).</LI>
|
||||
<LI> Fix texture memory leak when changing video modes with SDL2.</LI>
|
||||
<LI> Fix rare incorrect mdl lighting on 64-bit builds.
|
||||
<A HREF="http://forums.insideqc.com/viewtopic.php?f=3&t=5620">(details here.)</A></LI>
|
||||
<LI> Fix a rare incorrect mdl lighting on 64-bit builds. <A HREF="http://forums.insideqc.com/viewtopic.php?f=3&t=5620">(details here.)</A></LI>
|
||||
<LI> Fix fullbrights turning black after "kill" command (bug introduced in 0.90.0).</LI>
|
||||
<LI> Clear all fog values on map change to prevent colored fog carrying over to jam3_tronyn.bsp.</LI>
|
||||
<LI> Allow loading saves with } character in quoted strings, fixes issue with retrojam1_skacky.bsp.</LI>
|
||||
|
@ -475,7 +486,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
<LI> Update 3rd-party libraries.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.10">5.10</A> <A HREF="#toc5.10">Changes in 0.90.0</A>
|
||||
<H2><A NAME="ss5.11">5.11</A> <A HREF="#toc5.11">Changes in 0.90.0</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -521,7 +532,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
<LI> Other fixes and clean-ups.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.11">5.11</A> <A HREF="#toc5.11">Changes in 0.85.9</A>
|
||||
<H2><A NAME="ss5.12">5.12</A> <A HREF="#toc5.12">Changes in 0.85.9</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -545,7 +556,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
<LI> Several other minor fixes/cleanups.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.12">5.12</A> <A HREF="#toc5.12">Changes in 0.85.8</A>
|
||||
<H2><A NAME="ss5.13">5.13</A> <A HREF="#toc5.13">Changes in 0.85.8</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -570,7 +581,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
<LI> Miscellaneous source code cleanups.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.13">5.13</A> <A HREF="#toc5.13">Changes in 0.85.7</A>
|
||||
<H2><A NAME="ss5.14">5.14</A> <A HREF="#toc5.14">Changes in 0.85.7</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -588,7 +599,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="ss5.14">5.14</A> <A HREF="#toc5.14">Changes in 0.85.6</A>
|
||||
<H2><A NAME="ss5.15">5.15</A> <A HREF="#toc5.15">Changes in 0.85.6</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -599,7 +610,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
<LI> Minor SDL video fixes.</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.15">5.15</A> <A HREF="#toc5.15">Changes in 0.85.5</A>
|
||||
<H2><A NAME="ss5.16">5.16</A> <A HREF="#toc5.16">Changes in 0.85.5</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -618,7 +629,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="ss5.16">5.16</A> <A HREF="#toc5.16">Changes in 0.85.4</A>
|
||||
<H2><A NAME="ss5.17">5.17</A> <A HREF="#toc5.17">Changes in 0.85.4</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -636,7 +647,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
<LI> Other minor sound and cdaudio updates</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<H2><A NAME="ss5.17">5.17</A> <A HREF="#toc5.17">Changes in 0.85.3</A>
|
||||
<H2><A NAME="ss5.18">5.18</A> <A HREF="#toc5.18">Changes in 0.85.3</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -659,7 +670,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
</UL>
|
||||
</P>
|
||||
|
||||
<H2><A NAME="ss5.18">5.18</A> <A HREF="#toc5.18">Changes in 0.85.2</A>
|
||||
<H2><A NAME="ss5.19">5.19</A> <A HREF="#toc5.19">Changes in 0.85.2</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
@ -678,7 +689,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
|
|||
</UL>
|
||||
</P>
|
||||
|
||||
<H2><A NAME="ss5.19">5.19</A> <A HREF="#toc5.19">Changes in 0.85.1</A>
|
||||
<H2><A NAME="ss5.20">5.20</A> <A HREF="#toc5.20">Changes in 0.85.1</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
|
|
130
Quakespasm.txt
130
Quakespasm.txt
|
@ -19,35 +19,36 @@
|
|||
4.4 Quake '2021 re-release'
|
||||
|
||||
5. Changes
|
||||
5.1 Changes in 0.94.1
|
||||
5.2 Changes in 0.94.0
|
||||
5.3 Changes in 0.93.2
|
||||
5.4 Changes in 0.93.1
|
||||
5.5 Changes in 0.93.0
|
||||
5.6 Changes in 0.92.1
|
||||
5.7 Changes in 0.92.0
|
||||
5.8 Changes in 0.91.0
|
||||
5.8.1 Bugfixes
|
||||
5.8.2 Visual improvements
|
||||
5.8.3 Interface improvements
|
||||
5.8.4 Code cleanup / Other
|
||||
5.8.5 Raised limits
|
||||
5.9 Changes in 0.90.1
|
||||
5.1 Changes in 0.94.2
|
||||
5.2 Changes in 0.94.1
|
||||
5.3 Changes in 0.94.0
|
||||
5.4 Changes in 0.93.2
|
||||
5.5 Changes in 0.93.1
|
||||
5.6 Changes in 0.93.0
|
||||
5.7 Changes in 0.92.1
|
||||
5.8 Changes in 0.92.0
|
||||
5.9 Changes in 0.91.0
|
||||
5.9.1 Bugfixes
|
||||
5.9.2 Performance
|
||||
5.9.3 Visual improvements
|
||||
5.9.4 Interface improvements
|
||||
5.9.5 Code cleanup
|
||||
5.10 Changes in 0.90.0
|
||||
5.11 Changes in 0.85.9
|
||||
5.12 Changes in 0.85.8
|
||||
5.13 Changes in 0.85.7
|
||||
5.14 Changes in 0.85.6
|
||||
5.15 Changes in 0.85.5
|
||||
5.16 Changes in 0.85.4
|
||||
5.17 Changes in 0.85.3
|
||||
5.18 Changes in 0.85.2
|
||||
5.19 Changes in 0.85.1
|
||||
5.9.2 Visual improvements
|
||||
5.9.3 Interface improvements
|
||||
5.9.4 Code cleanup / Other
|
||||
5.9.5 Raised limits
|
||||
5.10 Changes in 0.90.1
|
||||
5.10.1 Bugfixes
|
||||
5.10.2 Performance
|
||||
5.10.3 Visual improvements
|
||||
5.10.4 Interface improvements
|
||||
5.10.5 Code cleanup
|
||||
5.11 Changes in 0.90.0
|
||||
5.12 Changes in 0.85.9
|
||||
5.13 Changes in 0.85.8
|
||||
5.14 Changes in 0.85.7
|
||||
5.15 Changes in 0.85.6
|
||||
5.16 Changes in 0.85.5
|
||||
5.17 Changes in 0.85.4
|
||||
5.18 Changes in 0.85.3
|
||||
5.19 Changes in 0.85.2
|
||||
5.20 Changes in 0.85.1
|
||||
|
||||
6. Copyright
|
||||
7. Contact
|
||||
|
@ -56,7 +57,7 @@
|
|||
|
||||
______________________________________________________________________
|
||||
|
||||
Page last edited: Sep. 2021
|
||||
Page last edited: October 2021
|
||||
|
||||
|
||||
1. About
|
||||
|
@ -260,13 +261,24 @@
|
|||
5. Changes
|
||||
|
||||
|
||||
5.1. Changes in 0.94.1
|
||||
5.1. Changes in 0.94.2
|
||||
|
||||
o 2021 rerelease: Support for playing the latest update.
|
||||
|
||||
o 2021 rerelease: Fix pitch black models in lit areas in DOTM.
|
||||
|
||||
o 2021 rerelease: Fix black candles in the DOTM start map.
|
||||
|
||||
o 2021 rerelease: Look for QuakeEX.kpf under userdir, too.
|
||||
|
||||
|
||||
5.2. Changes in 0.94.1
|
||||
|
||||
o Fix lightmap issues after vkQuake surface mark/cull optimizations
|
||||
merge (sf.net bug/50)
|
||||
|
||||
|
||||
5.2. Changes in 0.94.0
|
||||
5.3. 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, Guillaume Plourde
|
||||
|
@ -315,7 +327,7 @@
|
|||
o Source repository moved to git.
|
||||
|
||||
|
||||
5.3. Changes in 0.93.2
|
||||
5.4. Changes in 0.93.2
|
||||
|
||||
o Lightmaps are now dynamically allocated (from QSS), and
|
||||
BLOCK_WIDTH/HEIGHT raised from 128 to 256.
|
||||
|
@ -335,7 +347,7 @@
|
|||
o Update the third-party libraries. Other fixes/cleanups.
|
||||
|
||||
|
||||
5.4. Changes in 0.93.1
|
||||
5.5. Changes in 0.93.1
|
||||
|
||||
o Fixed a fog regression which was introduced in 0.93.0.
|
||||
|
||||
|
@ -353,7 +365,7 @@
|
|||
o Update the third-party libraries. Other fixes/cleanups.
|
||||
|
||||
|
||||
5.5. Changes in 0.93.0
|
||||
5.6. Changes in 0.93.0
|
||||
|
||||
o Raise default "joy_deadzone_trigger" cvar to 0.2.
|
||||
|
||||
|
@ -438,7 +450,7 @@
|
|||
o Update the third-party libraries.
|
||||
|
||||
|
||||
5.6. Changes in 0.92.1
|
||||
5.7. Changes in 0.92.1
|
||||
|
||||
o Fixed large menu scale factors (was broken in 0.92.0).
|
||||
|
||||
|
@ -447,7 +459,7 @@
|
|||
o Updated some of the third-party libraries.
|
||||
|
||||
|
||||
5.7. Changes in 0.92.0
|
||||
5.8. Changes in 0.92.0
|
||||
|
||||
o SDL2 Game Controller support.
|
||||
|
||||
|
@ -484,9 +496,9 @@
|
|||
o Updated some of the third-party libraries. Other fixes/clean-ups.
|
||||
|
||||
|
||||
5.8. Changes in 0.91.0
|
||||
5.9. Changes in 0.91.0
|
||||
|
||||
5.8.1. Bugfixes
|
||||
5.9.1. Bugfixes
|
||||
|
||||
o Fix unwanted fog mode change upon video restart.
|
||||
|
||||
|
@ -522,7 +534,7 @@
|
|||
|
||||
o Prevent a possible vulnerability in MSG_ReadString (old Q1/Q2 bug).
|
||||
|
||||
5.8.2. Visual improvements
|
||||
5.9.2. Visual improvements
|
||||
|
||||
o New cvars r_lavaalpha, r_slimealpha, r_telealpha for fine-tuning
|
||||
specific liquid opacities (from DirectQ/RMQEngine, non-archived,
|
||||
|
@ -533,18 +545,18 @@
|
|||
o GLSL gamma is now supported on older hardware without NPOT
|
||||
extension.
|
||||
|
||||
5.8.3. Interface improvements
|
||||
5.9.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.
|
||||
|
||||
5.8.4. Code cleanup / Other
|
||||
5.9.4. Code cleanup / Other
|
||||
|
||||
o Update third-party libraries.
|
||||
|
||||
5.8.5. Raised limits
|
||||
5.9.5. Raised limits
|
||||
|
||||
o Default max_edicts 8192 (was 2048) and no longer saved to
|
||||
config.cfg.
|
||||
|
@ -556,16 +568,16 @@
|
|||
o Raised MAX_SFX to 1024 (was 512).
|
||||
|
||||
|
||||
5.9. Changes in 0.90.1
|
||||
5.10. Changes in 0.90.1
|
||||
|
||||
5.9.1. Bugfixes
|
||||
5.10.1. Bugfixes
|
||||
|
||||
o Fix dynamic light artifact where changing lightmap are rendered one
|
||||
frame late (bug introduced in 0.90.0).
|
||||
|
||||
o Fix texture memory leak when changing video modes with SDL2.
|
||||
|
||||
o Fix rare incorrect mdl lighting on 64-bit builds. (details here:
|
||||
o Fix a rare incorrect mdl lighting on 64-bit builds. (details here:
|
||||
http://forums.insideqc.com/viewtopic.php?f=3&t=5620)
|
||||
|
||||
o Fix fullbrights turning black after "kill" command (bug introduced
|
||||
|
@ -581,13 +593,13 @@
|
|||
|
||||
o Fix crash on out-of-bounds skin number.
|
||||
|
||||
5.9.2. Performance
|
||||
5.10.2. Performance
|
||||
|
||||
o Use multithreaded OpenGL on OS X for better performance.
|
||||
|
||||
o New, faster mdl renderer using GLSL. Disable with "-noglslalias".
|
||||
|
||||
5.9.3. Visual improvements
|
||||
5.10.3. Visual improvements
|
||||
|
||||
o New gamma correction implementation using GLSL. Fixes all known
|
||||
gamma issues (affecting the full display, persisting after
|
||||
|
@ -601,7 +613,7 @@
|
|||
|
||||
o r_noshadow_list cvar added (from MarkV.)
|
||||
|
||||
5.9.4. Interface improvements
|
||||
5.10.4. Interface improvements
|
||||
|
||||
o Support pausing demo playback with the "pause" command.
|
||||
|
||||
|
@ -618,14 +630,14 @@
|
|||
"trying to load ent", "bad chunk length", "meshing",
|
||||
"PR_AlocStringSlots: realloc'ing"
|
||||
|
||||
5.9.5. Code cleanup
|
||||
5.10.5. Code cleanup
|
||||
|
||||
o Clean up IDE project files to build on fresh systems.
|
||||
|
||||
o Update 3rd-party libraries.
|
||||
|
||||
|
||||
5.10. Changes in 0.90.0
|
||||
5.11. Changes in 0.90.0
|
||||
|
||||
o Fix issues on Windows systems with DPI scaling.
|
||||
|
||||
|
@ -733,7 +745,7 @@
|
|||
o Other fixes and clean-ups.
|
||||
|
||||
|
||||
5.11. Changes in 0.85.9
|
||||
5.12. Changes in 0.85.9
|
||||
|
||||
o Fixes for several undefined behaviors in C code (gcc-4.8 support.)
|
||||
|
||||
|
@ -780,7 +792,7 @@
|
|||
o Several other minor fixes/cleanups.
|
||||
|
||||
|
||||
5.12. Changes in 0.85.8
|
||||
5.13. Changes in 0.85.8
|
||||
|
||||
o Made Quake shareware 1.00 and 1.01 versions to be recognized
|
||||
properly.
|
||||
|
@ -827,7 +839,7 @@
|
|||
o Miscellaneous source code cleanups.
|
||||
|
||||
|
||||
5.13. Changes in 0.85.7
|
||||
5.14. Changes in 0.85.7
|
||||
|
||||
o Added support for cross-level demo playback
|
||||
|
||||
|
@ -853,7 +865,7 @@
|
|||
o Several other small changes mostly invisible to the end-user
|
||||
|
||||
|
||||
5.14. Changes in 0.85.6
|
||||
5.15. Changes in 0.85.6
|
||||
|
||||
o More work for string buffer safety
|
||||
|
||||
|
@ -866,7 +878,7 @@
|
|||
o Minor SDL video fixes.
|
||||
|
||||
|
||||
5.15. Changes in 0.85.5
|
||||
5.16. Changes in 0.85.5
|
||||
|
||||
o SDL input driver updated adding native keymap and dead key support
|
||||
to the console
|
||||
|
@ -897,7 +909,7 @@
|
|||
o Several code updates from uHexen2 project, several code cleanups.
|
||||
|
||||
|
||||
5.16. Changes in 0.85.4
|
||||
5.17. Changes in 0.85.4
|
||||
|
||||
o Implement music (OGG, MP3, WAV) playback
|
||||
|
||||
|
@ -925,7 +937,7 @@
|
|||
o Other minor sound and cdaudio updates
|
||||
|
||||
|
||||
5.17. Changes in 0.85.3
|
||||
5.18. Changes in 0.85.3
|
||||
|
||||
o Fix the "-dedicated" option (thanks Oz) and add platform specific
|
||||
networking code (default) rather than SDL_net
|
||||
|
@ -962,7 +974,7 @@
|
|||
some other CD tweaks.
|
||||
|
||||
|
||||
5.18. Changes in 0.85.2
|
||||
5.19. Changes in 0.85.2
|
||||
|
||||
o Replace the old "Screen size" slider with a "Scale" slider
|
||||
|
||||
|
@ -990,7 +1002,7 @@
|
|||
o Add OSX Makefile (tested?)
|
||||
|
||||
|
||||
5.19. Changes in 0.85.1
|
||||
5.20. Changes in 0.85.1
|
||||
|
||||
o 64 bit CPU support
|
||||
|
||||
|
|
Loading…
Reference in a new issue