havoc [Fri, 14 Nov 2003 14:02:56 +0000 (14:02 +0000)]
r_refdef.vieworg and r_refdef.viewangles replaced by r_refdef.viewentitymatrix
fixed intermission camera bug (now the right place and angles by copying the entity matrix directly to r_refdef)
fixed intermission listener bug (now the right place by copying the entity matrix to listener variables)
fixed envmap command saving (now reads the correct part of the screen according to GL's bottom to top coordinates, so this works again)
fixed envmap command rendering (it was not hiding view and exterior models)
fixed timerefresh command rendering (it was not properly setting up the view)
merged chase.c into view.c because it really didn't have any good reasons to be separate
renamed listener_forward to listener_viewforward, listener_up to listener_viewup, listener_origin to listener_vieworigin, and converted listener_right to listener_viewleft
renamed vpn to r_viewforward, vup to r_viewup, vright to r_viewright (deprecated, trying to use just r_viewleft but haven't finished converting things over to it yet), r_origin to r_vieworigin
havoc [Tue, 11 Nov 2003 02:36:21 +0000 (02:36 +0000)]
q1bsp lightmaps are now always rendered at 2x overbright like software quake and q3bsp (this means all multitexture lightmapped wall methods now require combine)
havoc [Mon, 10 Nov 2003 08:20:04 +0000 (08:20 +0000)]
now limits animation lerp time to .1 second to fix a problem with framegroup models changing frame (which they do infrequently) and interpolating the change really slowly
havoc [Wed, 5 Nov 2003 08:18:54 +0000 (08:18 +0000)]
call reset functions in init code (not necessary currently, as the compilers currently being used for darkplaces clear uninitialized variables, but a good practice)
havoc [Wed, 5 Nov 2003 08:00:34 +0000 (08:00 +0000)]
fixed r_restart/vid_restart bugs with skybox (now reloads skybox as it should) and cleaned up skybox loading/unloading (no more memory leaks when changing skybox during game)
havoc [Wed, 5 Nov 2003 03:36:38 +0000 (03:36 +0000)]
added r_shadow_showtris
added gl_texture_anisotropy to menu
changed sv_cullentities_trace and _pvs defaults to 0 and 1 respectively (now uses pvs culling because trace culling was too slow in q3bsp)
r_shadow_realtime_world now works in q3bsp (using upgraded Mod_ShadowMesh functions to combine lighting meshes)
rewrote most of R_Q3BSP_DrawFace - now supports singletexture cards, r_shadow_realtime_world, and glow textures
black [Thu, 30 Oct 2003 12:49:30 +0000 (12:49 +0000)]
Added 2(3) builtin functions.
Changed the 2d mouse code, so that the relative coords are mapped into the console coord system (mouse speed is always the same in the menu qc).
black [Tue, 28 Oct 2003 22:29:30 +0000 (22:29 +0000)]
Fixed a bug that caused some messages to not be logged to the disk (Con_Print calls instead of Con_Printf).
Changed the comment of Con_Print, so it isnt misleading any more.
Fixed a bug so dp wont crash when VM_strzone/VM_strunzone is used.
black [Sun, 26 Oct 2003 21:54:59 +0000 (21:54 +0000)]
Changed the way the new vm is handling the unloading of programs - respectively cleaned PRVM_ResetProgs.
Moved the key_dest reset from MR_Restart to M_Shutdown/MP_Shutdown.
black [Thu, 23 Oct 2003 19:47:08 +0000 (19:47 +0000)]
Changed prvm_ed_loadfromfile - it isnt really compatible with the old vm anymore (allows now loading multiple files. Fixed prvm_crashall and altered some error texts.
havoc [Tue, 21 Oct 2003 12:21:26 +0000 (12:21 +0000)]
physics code no longer uses allsolid (mainly of concern to q3bsp which rarely set it), only startsolid (allsolid is of course kept for QC compatibility, as non-functional as it may be), and I reenabled movement when in solid (so objects can move out of obstacles they managed to end up inside)
havoc [Tue, 21 Oct 2003 12:18:43 +0000 (12:18 +0000)]
SV_Move (and children) now only set trace.ent if there is an impact, not if it was an allsolid situation... and SV_PointQ1Contents now uses SV_PointSuperContents
black [Tue, 21 Oct 2003 12:08:29 +0000 (12:08 +0000)]
Added in_mouse_x and in_mouse_y, which contain the rel. coords of the mouse.
Fixed a bug where PRVM_Stacktrace/PR_Stacktrace were involved.
Added some vm builtin functions to the new vm and changed PRVM_ED_LoadFromFile, so it can load multiple files.
havoc [Tue, 21 Oct 2003 11:43:58 +0000 (11:43 +0000)]
moved trace endpos calculation outside of RecursiveHullCheck, to improve code layout consistency between collision box and q1bsp code (no effect on results)
black [Fri, 17 Oct 2003 14:02:34 +0000 (14:02 +0000)]
Updated some builtin parameter lists, added 2 functions to the menu builtins.
Added the boolean in_client_mouse (used to indicate wheter mouse position data
should be send to the client.
(Only Win at the moment)
havoc [Thu, 16 Oct 2003 11:41:18 +0000 (11:41 +0000)]
handle one error condition I forgot to code in PF_setattachment (modelindex was checked, but did not check for it resolving to a NULL model, as is the case whem modelindex is 0)
black [Sat, 11 Oct 2003 12:14:33 +0000 (12:14 +0000)]
Added the drawing functions and added also probably menu only message functions
(almost the same as the server ones, but with different param (order)).
Also added all functions to the menu builtin list (except the menu specific ones :-/).
The drawflag constants are now the drawqueue_drawflag_e enum.
Added function S_GetCached.
havoc [Sat, 11 Oct 2003 05:34:49 +0000 (05:34 +0000)]
added DP_QC_TRACE_MOVETYPE_HITMODEL extension (and added DP_QC_TRACE_MOVETYPE_WORLDONLY to extension list) - this means traceline/tracebox can now check model geometry
havoc [Sat, 11 Oct 2003 03:39:39 +0000 (03:39 +0000)]
reverted two bugs introduced by Black (anum red digits were not being loaded, and restored the positioning of the minideathmatchoverlay to exactly where quake had it - my previous commit was 4 pixels off in positioning)
havoc [Sat, 11 Oct 2003 03:11:49 +0000 (03:11 +0000)]
made weapon only 50% invisible in Transfusion with the invisibility powerup, and now being dead or invisible only affects the main viewmodel (not viewmodelforccient entities) to allow more flexibility in mods
havoc [Fri, 10 Oct 2003 03:07:18 +0000 (03:07 +0000)]
this should fix skybox in q3bsp (extra preprocessing pass to look for sky surfaces before rendering normal surfaces, only used if the map has sky surfaces)
havoc [Fri, 10 Oct 2003 01:45:51 +0000 (01:45 +0000)]
q3bsp surfaces are now always rendered in the same order, made the q1bsp vis overrun/underrun warnings dprintf's, added some (unused) array merging code in q3bsp loading
black [Thu, 9 Oct 2003 19:42:35 +0000 (19:42 +0000)]
Added a lot of builtin commands to prvm_cmds.c (mostly from pr_cmds).
Also changed the menu again, so menu_restart doesnt try to reregister cvars
and cmds any more.
havoc [Wed, 8 Oct 2003 20:50:28 +0000 (20:50 +0000)]
collision brush generation in q3bsp is now *MUCH* faster and uses a lot less memory (technical: now uses two temp windings, repeatedly swapping between them, avoiding all the temporary allocs, to achieve this BufWinding_NewFromPlane and BufWinding_Divide were added)
havoc [Wed, 8 Oct 2003 20:21:37 +0000 (20:21 +0000)]
fixed splashing sounds once and for all - now splashes only on transitions involving water/slime, rather than the old 'any liquid except lava' check, so this means no more sky splashing...
havoc [Tue, 7 Oct 2003 23:45:14 +0000 (23:45 +0000)]
cd audio now tied to sound system
sound system now tied to video system because DirectSound needs a window to work at all (thank you Windows for another useless obstacle)
sound system can now restart (snd_restart command)
vid_stencil cvar removed (now tied to 32bit color)
vid_bitsperpixel now defaults to 32
r_shadow_shadows cvar added (default 1) for stencil shadows on dlights (since vid_stencil is gone)
Lots of str[n]cat, str[n]cpy, and [v]sprintf have been replaced by strlcat, strlcpy and [v]snprintf to insure that they don't write outside of their buffers. More to come later.
Added strlcat and strlcpy, from OpenBSD. They are smart replacements for strncat and strncpy - see http://www.courtesan.com/todd/papers/strlcpy.html or their manual pages on the OpenBSD website for details
The "position" field of the "qfile_t" structure was (correctly) used for 2 differents things; this is clearly bad practice though, so it's no longer the case. Added a missing test in FS_Seek to insure we don't seek outside of a deflated file. Plus some minor cleanups here and there in the FS code.
huge (16%) speed gain on surface rendering by eliminating the surfmesh chain in q1bsp surfaces, now only allows one mesh per surface and the surfmesh_t is embedded in the surface struct