havoc [Wed, 10 Mar 2004 03:28:04 +0000 (03:28 +0000)]
added Print versions of Printf functions and made all calls that do not need formating use the Print versions; yes this is a cosmetic cleanup, prints are too rare to have any performance improvements.
havoc [Tue, 9 Mar 2004 20:35:51 +0000 (20:35 +0000)]
worked around curve collision problems by doing special sort-of-axial edge planes on triangle collisions (ultimately the collision routine needs to do edge/edge collisions somehow to make this unnecessary)
now snaps triangle mesh vertices to 1/32 of a unit precision to keep the plane calculations a little more accurate (note: this is done at collision time), although this doesn't seem to be necessary
collision nudge values are now configurable via cvars (collision_ cvars, warning: things tend to break if startnudge != endnudge, and enternudge should be the same as leavenudge)
havoc [Wed, 3 Mar 2004 15:26:27 +0000 (15:26 +0000)]
made r_showtris transparent (quite faint actually), color coded different types of geometry, and now shows all tris (even hud), cleaned up a few qgl calls (GL_Clear added, etc) to make it more reliable
havoc [Tue, 2 Mar 2004 20:29:58 +0000 (20:29 +0000)]
temporarily disabled compiled rtlights (they'll make a comeback after dynamic rtlight optimizations are finished)
dynamic rtlight shadow volumes for bmodels are now generated from a single mesh for the entire model, in which only some ranges of triangles are marked, this finally cured the performance problems with dlight
s
havoc [Tue, 2 Mar 2004 00:22:31 +0000 (00:22 +0000)]
dlights using light_lev now need the PFLAG_FULLDYNAMIC flag set to operate, otherwise they are ignored, this was necessary (lights that did not remove themselves were being treated as proper dlights), it is also now more tenebrae compatible (EF_FULLDYNAMIC translated to PFLAG_FULLDYNAMIC in GAME_TENEBRAE mode)
havoc [Mon, 1 Mar 2004 18:56:32 +0000 (18:56 +0000)]
more cleanups of R_RenderScene (now r_view_ variables exist which are copied from the r_refdef fields each frame, these variables can easily be reconfigured for texture renders for mirrors or whatever)
havoc [Mon, 1 Mar 2004 04:59:51 +0000 (04:59 +0000)]
screenshots are now saved to screenshots/ and videos are now saved to video/, and both now use the name template dp%06d.tga or .jpg, GAME_FNIGGIUM uses fniggium%06d.tga or .jpg as per Sajt's request
havoc [Mon, 1 Mar 2004 03:49:14 +0000 (03:49 +0000)]
upgraded network protocol to DP5, now sends precise entity angles (except for EF_LOWPRECISION entities), this increases normal entity data by 3 bytes (18 bytes for origin+angles, was 15 bytes in DP4, still 9 bytes for EF_LOWPRECISION origin+angles), upgraded a few other parts of protocol to precise angles and/or floats as well (client data updates now use float for punchvector and velocity
)
havoc [Mon, 1 Mar 2004 01:58:02 +0000 (01:58 +0000)]
cleaned up rtlight handling, merging most code between world rtlights and dlights (which now could conceivably be compiled if static)
moved R_ShadowVolumeLighting to r_shadow.c
added RENDER_LIGHT flag to entity_render_t to make rtlighting optional per entity
havoc [Mon, 1 Mar 2004 01:46:35 +0000 (01:46 +0000)]
fixed SV_TouchAreaGrid to not crash if SV_IncreaseEdicts is called during a touch function, by making a list of edicts to touch and then running through the list afterward
havoc [Wed, 25 Feb 2004 18:41:19 +0000 (18:41 +0000)]
MOVETYPE_BOUNCE change: an explosion above gibs will now cause them to bounce into the air, rather than skidding to a halt immediately like they were doing
havoc [Sun, 22 Feb 2004 18:56:51 +0000 (18:56 +0000)]
fixed GL_Scissor call in rtlight code (apparently I need to feed it a top to bottom rectangle... ? must be something weird in the transform math as GL uses bottom to top)
made q1bsp and q3bsp a little more alike (regarding pvs clusters), now q3bsp has all the same pvs cluster fields as q3bsp
added fake lightgrid and pvs data to q3bsp loading when map is unlit or unvised respectively, this should improve internal consistency
havoc [Sat, 21 Feb 2004 21:05:21 +0000 (21:05 +0000)]
cleaned up R_RenderView setup code a bit, and shuffled SCR_CalcRefdef stuff to SCR_UpdateScreen
scissor is now on during all of R_RenderView (including rtlight portions), and GL_Scissor is used to set it instead of direct qglScissor calls, also GL_ScissorTest is used
r_farclip is now calculated without need for... just about anything, this allowed shuffling the setup code around a bit
various cleanups to allow multiple view renders per frame
added scr_zoomwindow cvars to do a (silly) zoomed view picture-in-picture overlay, it works but turned out useless in playtesting unless you want to stare at a shambler's chest... ugh
R_AnimateLight and R_BuildLightList merged to become R_UpdateLights
some setup code from R_RenderView became a new function R_UpdateWorld
GL_SetupView_ViewPort calls replaced by qglViewport calls, as it was a mostly useless wrapper
havoc [Sat, 21 Feb 2004 11:58:08 +0000 (11:58 +0000)]
rate limited networking ("rate" command in client console, limited by sv_maxrate cvar on server), also cleaned up some of the MAX_DATAGRAM and similar defines (now only uses NET_MAXMESSAGE)
havoc [Sat, 21 Feb 2004 07:37:36 +0000 (07:37 +0000)]
moved light matrix generation out of the render code and into the light creation code (rtlight and dlight setup) to save time and simplify things
rtlights and dlights now have an orientation matrix (this allows cubemaps to be rotated)
rtlights can now have corona flares, and it is adjustable per light (also on dlights)
r_coronas cvar now controls corona intensity, and menu now has r_coronas slider instead of checkbox
dlights now have color[]/radius settings instead of just colored intensity, so the radius can be independently controlled again (this mainly improves realtime dlight behaviors)
dlights can now have cubemaps, light styles, optional shadows (rather than always on), and better color/radius settings (and all this is tenebrae compatible) using the light_lev, color, style, skin (cubemap number, only available if modelindex is 0), and pflags (1 is no shadow, 2 is draw corona which is ignored by darkplaces because it always draws a corona) fields in the quakec entities
now supports tenebrae dlight fields (light_lev, color, style, pflags), this means dlights can now have cubemaps (skin, only used if modelindex is 0), light style (style), color (color) and radius (light_lev) with more precision than glow_ fields, and pflags (flag 1 is no shadow, flag 2 is corona which is ignored because dlights always have a corona in darkplaces), also loads tenebrae mods
added TENEBRAE_GFX_DLIGHTS extension
havoc [Fri, 20 Feb 2004 17:04:03 +0000 (17:04 +0000)]
fixed loading of replacement frame images (it was stripping the .spr extension, weird), and reduced spr internal image handling code a bit by using a second alpha palette
havoc [Wed, 18 Feb 2004 10:32:06 +0000 (10:32 +0000)]
added gl_lightmaps cvar (for looking at the raw lightmaps in the map without textures)
added r_shadow_realtime_world_lightmaps cvar (turn on/off lightmaps in r_shadow_realtime_world mode, also can be a fraction to control brightness)
havoc [Tue, 17 Feb 2004 02:13:34 +0000 (02:13 +0000)]
reduced size of viewblend triangle from 64000 units to 64 units, in hopes of curing precision problems on some graphics cards (NVIDIA and ATI both) causing a missing line on the blend
havoc [Tue, 10 Feb 2004 21:09:57 +0000 (21:09 +0000)]
change joystick key numbers to start at 768 instead of 1024 (this gives 512 keys, 256 mouse, 256 joystick)
enlarge various key arrays to hold 1024 keys
black [Tue, 10 Feb 2004 16:03:44 +0000 (16:03 +0000)]
The mouse buttons now use the range 512 - 1023 and the joystick/aux stuff starts at 1024. I **hope** this won't be changed as I've just fixed the msys.qc.
molivier [Tue, 10 Feb 2004 07:14:03 +0000 (07:14 +0000)]
Added a couple of function skeletons for the automatic unloading of unused sounds (coming very soon). Removed the empty functions S_BeginPrecaching, S_EndPrecaching and S_ClearPrecache. I broke the "silentlymissing" sound flag recently, it could be set even if the sound was successfully loaded (this flag doesn't seem to be used in any active part of the code, but until I sort this out it's better to have it right); anyhow it's fixed now. Switched "silentlymissing"'s type to "qboolean" in the process. Fixed an implicit conversion warning when calling Sys_Sleep in MSVC6.
molivier [Mon, 9 Feb 2004 09:26:45 +0000 (09:26 +0000)]
The test used in the FS_Read function to detect the end of a compressed file was incorrect, causing some big files to be truncated when unzipped. Many thanks to Fuh for poiting out this mistake to me
havoc [Mon, 9 Feb 2004 07:08:45 +0000 (07:08 +0000)]
fix a particle trail bug with freshly spawned entities that leave a trail, I don't really understand how this bug happens (or why it doesn't happen all the time), but it is fixed
havoc [Mon, 9 Feb 2004 05:50:53 +0000 (05:50 +0000)]
changed shader parsing to use strcasecmp just incase some shader has a weird case on the surfaceparms
made some of the q3bsp warnings use dprintf because they're probably annoying users
switched to simpler tracebrush bsp recursion code (the old code crashed for me occasionally, but I've been unable to reproduce that problem again, so I guess it's fixed too, or something)
havoc [Fri, 6 Feb 2004 05:18:17 +0000 (05:18 +0000)]
increased size of ditherpattern texture to try to work around the odd 'not black' dither bug (succeeded? yes, but no closer to figuring out why it was misbehaving in the first place)