18 years agoMem_Free on a const pointer apparently irritates MSVC but not gcc... hush MSVC
havoc [Sun, 22 Sep 2002 00:16:50 +0000 (00:16 +0000)]
Mem_Free on a const pointer apparently irritates MSVC but not gcc...  hush MSVC

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2411 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoDOS line endings
havoc [Sat, 21 Sep 2002 23:18:41 +0000 (23:18 +0000)]
DOS line endings

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2410 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofix for glowing invisible models showing up (artifact items staying visible after...
havoc [Fri, 20 Sep 2002 05:29:09 +0000 (05:29 +0000)]
fix for glowing invisible models showing up (artifact items staying visible after pickup in darkplaces mod - the glow still stays though)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2397 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofix for beams coming from invisible objects
havoc [Thu, 19 Sep 2002 23:51:53 +0000 (23:51 +0000)]
fix for beams coming from invisible objects

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2396 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoshuffled cl_light and some of cl_tent into cl_main and remaining cl_tent code into...
havoc [Thu, 19 Sep 2002 18:01:45 +0000 (18:01 +0000)]
shuffled cl_light and some of cl_tent into cl_main and remaining cl_tent code into cl_parse
got rid of bitprofile console command because it only worked for old protocol (probably should add it back for new protocol though)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2392 d7cf8633-e32d-0410-b094-e92efae38249

18 years agodisable profiling by default
havoc [Wed, 18 Sep 2002 05:02:10 +0000 (05:02 +0000)]
disable profiling by default

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2391 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomove CL_RelinkBeams after CL_RelinkNetworkEntities so position is up to date
havoc [Wed, 18 Sep 2002 04:57:21 +0000 (04:57 +0000)]
move CL_RelinkBeams after CL_RelinkNetworkEntities so position is up to date

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2390 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomake lightning come from player's gun
havoc [Wed, 18 Sep 2002 04:51:59 +0000 (04:51 +0000)]
make lightning come from player's gun
fix lightning visibility (wasn't calculating bounding box before)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2389 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomatchpattern can now be case insensitive if desired
havoc [Wed, 18 Sep 2002 03:50:21 +0000 (03:50 +0000)]
matchpattern can now be case insensitive if desired
pak filename matching is now case insensitive

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2388 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoyou can now build a darkplaces-dedicated executable as well as a darkplaces-glx execu...
havoc [Tue, 17 Sep 2002 23:23:45 +0000 (23:23 +0000)]
you can now build a darkplaces-dedicated executable as well as a darkplaces-glx executable (and infact this is done automatically :)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2387 d7cf8633-e32d-0410-b094-e92efae38249

18 years agosparks and rain are now beam particles
havoc [Tue, 17 Sep 2002 21:47:10 +0000 (21:47 +0000)]
sparks and rain are now beam particles

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2386 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoadded R_CalcBeamVerts function, calculates vertex array for beam polygon
havoc [Tue, 17 Sep 2002 21:27:46 +0000 (21:27 +0000)]
added R_CalcBeamVerts function, calculates vertex array for beam polygon

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2385 d7cf8633-e32d-0410-b094-e92efae38249

18 years agocolors for DrawQ_Mesh are now float rather than byte, and vertices are padded to...
havoc [Tue, 17 Sep 2002 21:25:51 +0000 (21:25 +0000)]
colors for DrawQ_Mesh are now float rather than byte, and vertices are padded to 4 floats per vertex
R_DrawQueue conversion to R_Mesh is getting closer to done

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2384 d7cf8633-e32d-0410-b094-e92efae38249

18 years agom.wantoverbright is gone
havoc [Tue, 17 Sep 2002 01:40:59 +0000 (01:40 +0000)]
m.wantoverbright is gone
done manually by the few things that wanted it (tweaking the texrgbscale in other words, and their own local colorscale variables)
mesh_colorscale renamed to r_colorscale, and now available throughout rendering (no need to wait for the results of R_Mesh_State before scaling your colors)
lightscalebit renamed to r_lightmapscalebit
lightscale is gone (wasn't used)
msurface_t cached_lightscalebit renamed accordingly to cached_lightmapscalebit
starting work on converting the 2D system to use R_Mesh calls

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2383 d7cf8633-e32d-0410-b094-e92efae38249

18 years agointeger dlight code is now 32bit (instead of 64bit)
havoc [Sun, 15 Sep 2002 20:13:59 +0000 (20:13 +0000)]
integer dlight code is now 32bit (instead of 64bit)
stain creation code is now floating point
stain creation code is now linear falloff instead of 1/(x*x), to make stains more consistent with respect to radius (their center density is exactly known)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2379 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoenlarge bbox for visibility purposes if there is a glow or other such effect
havoc [Sat, 14 Sep 2002 00:25:02 +0000 (00:25 +0000)]
enlarge bbox for visibility purposes if there is a glow or other such effect

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2378 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoGL_SetupView_* functions added, they replace most of R_Mesh_Start's functionality...
havoc [Fri, 13 Sep 2002 04:03:54 +0000 (04:03 +0000)]
GL_SetupView_* functions added, they replace most of R_Mesh_Start's functionality (it still exists and does the remaining things), GL_SetupView_* functions should be used for setting up a view (obviously) for rendering, view orientation and perspective and all that...

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2376 d7cf8633-e32d-0410-b094-e92efae38249

18 years agounused variable arraylocked removed
havoc [Fri, 13 Sep 2002 03:33:36 +0000 (03:33 +0000)]
unused variable arraylocked removed

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2375 d7cf8633-e32d-0410-b094-e92efae38249

18 years agogot rid of gl_mesh_drawmode, now only gl_mesh_drawrangeelements remains, this got...
havoc [Thu, 12 Sep 2002 22:31:18 +0000 (22:31 +0000)]
got rid of gl_mesh_drawmode, now only gl_mesh_drawrangeelements remains, this got rid of support for non-vertex-array rendering, also now c_meshs and c_meshtris are counted by GL_DrawRangeElements (c_meshtris was renamed to c_meshelements)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2373 d7cf8633-e32d-0410-b094-e92efae38249

18 years agovarray_element is gone, instead you pass your own element array to R_Mesh_Draw
havoc [Thu, 12 Sep 2002 16:07:13 +0000 (16:07 +0000)]
varray_element is gone, instead you pass your own element array to R_Mesh_Draw
this got a 3.5% speed gain in cavetest2bench
also, R_Mesh_ResizeCheck now takes only a numverts parameter, since numtriangles was only used for the varray_element array

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2372 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomanually inlined GL_LockArray and GL_UnlockArray in the only places they were used
havoc [Thu, 12 Sep 2002 14:55:25 +0000 (14:55 +0000)]
manually inlined GL_LockArray and GL_UnlockArray in the only places they were used
RGB fragment textures are no longer aligned on 3 pixel boundaries, changed UNPACK_ALIGNMENT to allow this

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2371 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoadded pr_traceqc cvar, to enable serious spew (printing every opcode executed to...
havoc [Thu, 12 Sep 2002 12:20:01 +0000 (12:20 +0000)]
added pr_traceqc cvar, to enable serious spew (printing every opcode executed to console) for extreme debugging

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2365 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoa little extra error checking in keynum lookup
havoc [Thu, 12 Sep 2002 12:15:34 +0000 (12:15 +0000)]
a little extra error checking in keynum lookup

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2364 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoVID_Init now takes mode settings (fullscreen, width, height)
havoc [Wed, 11 Sep 2002 15:05:44 +0000 (15:05 +0000)]
VID_Init now takes mode settings (fullscreen, width, height)
commandline options like -window and -width are now parsed by vid_shared code
vid_width, vid_height, and vid_bitsperpixel cvars added, vid_mode removed
VID_CompareMode added, for simpler mode matching (returns a double, smaller value is better match)
GL_OpenLibrary takes a library name to load
GL_OpenLibrary, GL_CloseLibrary, and GL_GetProcAddress have been moved to platform specific vid_ files (wgl and glx)
gl_platform added (example values: "WGL", "GLX")
gl_platformextensions added (containing any extensions reported by platform specific strings)
gl_checkextension renamed to GL_CheckExtension for consistency
glXQueryExtensionsString and glXGetProcAddressARB support
looks up GLX_SGI_video_sync extension
removed halfscreen hack from vid_wgl (the code that tried to identify dual monitor configurations and use only one of them)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2363 d7cf8633-e32d-0410-b094-e92efae38249

18 years agowhitespace
havoc [Wed, 11 Sep 2002 14:55:46 +0000 (14:55 +0000)]
lots of things are now const pointers

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2362 d7cf8633-e32d-0410-b094-e92efae38249

18 years agocheck for -safe
havoc [Wed, 11 Sep 2002 14:12:30 +0000 (14:12 +0000)]
check for -safe

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2361 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoR_SetSkyBox now takes a const char *
havoc [Wed, 11 Sep 2002 13:59:53 +0000 (13:59 +0000)]
R_SetSkyBox now takes a const char *

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2360 d7cf8633-e32d-0410-b094-e92efae38249

18 years agowhitespace
havoc [Wed, 11 Sep 2002 13:57:54 +0000 (13:57 +0000)]

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2359 d7cf8633-e32d-0410-b094-e92efae38249

18 years agocheck for -safe
havoc [Wed, 11 Sep 2002 13:54:36 +0000 (13:54 +0000)]
check for -safe

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2358 d7cf8633-e32d-0410-b094-e92efae38249

18 years agowhitespace
havoc [Wed, 11 Sep 2002 13:49:07 +0000 (13:49 +0000)]

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2357 d7cf8633-e32d-0410-b094-e92efae38249

18 years agocheck for -safe
havoc [Wed, 11 Sep 2002 13:48:31 +0000 (13:48 +0000)]
check for -safe

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2356 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoBoxOnPlaneSideFunc code - gone, replaced by BoxOnPlaneSide
havoc [Wed, 11 Sep 2002 04:03:27 +0000 (04:03 +0000)]
BoxOnPlaneSideFunc code - gone, replaced by BoxOnPlaneSide
BOX_ON_PLANE_SIDE macro - gone, no replacement necessary (use BoxOnPlaneSide)
R_CullBox and R_CulledBox macros have been replaced by optimized functions
this gets a minor speed gain overall

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2355 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomajor speed gain in cavetest2 by checking if the portal is facing the wrong way
havoc [Wed, 11 Sep 2002 01:19:39 +0000 (01:19 +0000)]
major speed gain in cavetest2 by checking if the portal is facing the wrong way

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2354 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomemheaders are now doubly linked, so Mem_Free goes faster than it used to
havoc [Wed, 11 Sep 2002 00:15:23 +0000 (00:15 +0000)]
memheaders are now doubly linked, so Mem_Free goes faster than it used to

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2353 d7cf8633-e32d-0410-b094-e92efae38249

18 years agocorrected an error message in .lights code
havoc [Tue, 10 Sep 2002 23:04:07 +0000 (23:04 +0000)]
corrected an error message in .lights code

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2352 d7cf8633-e32d-0410-b094-e92efae38249

18 years agono need to update lightmaps if using r_vertexsurfaces
havoc [Tue, 10 Sep 2002 22:47:05 +0000 (22:47 +0000)]
no need to update lightmaps if using r_vertexsurfaces

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2351 d7cf8633-e32d-0410-b094-e92efae38249

18 years agooptimizing R_DrawSurfaces and WorldNode functions
havoc [Tue, 10 Sep 2002 22:27:59 +0000 (22:27 +0000)]
optimizing R_DrawSurfaces and WorldNode functions
visframe and pvsframe are now arrays rather than part of the surface struct, resulting in less cache misses

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2350 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoenable optimizations again (oops)
havoc [Tue, 10 Sep 2002 17:17:18 +0000 (17:17 +0000)]
enable optimizations again (oops)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2349 d7cf8633-e32d-0410-b094-e92efae38249

18 years agosurfaces are now texture sorted rather than shader sorted, OpaqueWall renderers have...
havoc [Tue, 10 Sep 2002 17:12:15 +0000 (17:12 +0000)]
surfaces are now texture sorted rather than shader sorted, OpaqueWall renderers have been reorganized to minimize state checks, which offers a minor speedup
r_vertexsurfacesthreshold is gone, no longer supported...

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2348 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofixed combine overbright behavior
havoc [Tue, 10 Sep 2002 16:54:12 +0000 (16:54 +0000)]
fixed combine overbright behavior

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2347 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoexpanded console buffer from 16k to 128k, and changed scroll amount to be dependent...
havoc [Mon, 9 Sep 2002 15:58:36 +0000 (15:58 +0000)]
expanded console buffer from 16k to 128k, and changed scroll amount to be dependent on visible console height (scrolls half the visible area instead of just 2 lines)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2346 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofixed typo
havoc [Mon, 9 Sep 2002 15:31:26 +0000 (15:31 +0000)]
fixed typo

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2345 d7cf8633-e32d-0410-b094-e92efae38249

18 years agosvs.clients is now allocated dynamically according to svs.maxclients, and there is...
havoc [Mon, 9 Sep 2002 15:30:16 +0000 (15:30 +0000)]
svs.clients is now allocated dynamically according to svs.maxclients, and there is now a function for updating svs.maxclients called SV_SetMaxClients
this cuts the memory usage in singleplayer by 17mb

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2344 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoremoved modelsortedsurfaces
havoc [Mon, 9 Sep 2002 14:30:09 +0000 (14:30 +0000)]
removed modelsortedsurfaces

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2343 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomempools now have sentinel checks, for completeness
havoc [Fri, 6 Sep 2002 16:51:51 +0000 (16:51 +0000)]
mempools now have sentinel checks, for completeness

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2342 d7cf8633-e32d-0410-b094-e92efae38249

18 years agowhitespace cleanup
havoc [Fri, 6 Sep 2002 12:05:29 +0000 (12:05 +0000)]
whitespace cleanup

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2341 d7cf8633-e32d-0410-b094-e92efae38249

18 years agotransform matrix is now separate from R_Mesh_State, a new function called R_Mesh_Matr...
havoc [Fri, 6 Sep 2002 11:48:47 +0000 (11:48 +0000)]
transform matrix is now separate from R_Mesh_State, a new function called R_Mesh_Matrix takes up the task of changing transforms, and is used a lot less frequently in the engine than R_Mesh_State, this gets a nice speed gain in cavetest2

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2340 d7cf8633-e32d-0410-b094-e92efae38249

18 years agonow uses hardware transforms
havoc [Fri, 6 Sep 2002 09:45:51 +0000 (09:45 +0000)]
now uses hardware transforms
fixed a bunch of bugs in matrixlib
view matrix is now calculated using Matrix4x4 functions instead of GL calls

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2339 d7cf8633-e32d-0410-b094-e92efae38249

18 years agocorrected function names reported in various backend not active errors (by using...
havoc [Fri, 6 Sep 2002 07:14:15 +0000 (07:14 +0000)]
corrected function names reported in various backend not active errors (by using a #define that uses __func__ to get the function name as a string)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2338 d7cf8633-e32d-0410-b094-e92efae38249

18 years agovertex arrays renamed to varray_ and exposed to rest of engine
havoc [Fri, 6 Sep 2002 06:51:18 +0000 (06:51 +0000)]
vertex arrays renamed to varray_ and exposed to rest of engine
mesh_maxtris and mesh_maxverts exposed (really only intended for R_Mesh_ResizeCheck #define)
R_Mesh_GetBuffer is gone, R_Mesh_State takes it's place for most of it's functionality
R_Mesh_ResizeCheck (a #define) will expand arrays on the fly if a mesh is too big (note: be sure to use this if you have a mesh that may be more than 1024 triangles, 3072 verts)
R_Mesh_Draw takes the place of R_Mesh_Render and takes two parameters (number of verts and number of triangles)
fixed bug that caused sky to appear through models when sky was onscreen (R_DrawWorld must be called at a specific point in rendering, had forgotten that)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2337 d7cf8633-e32d-0410-b094-e92efae38249

18 years agocurrenttriangle and currentvertex no longer exist, also firstvert and firsttriangle...
havoc [Thu, 5 Sep 2002 14:38:39 +0000 (14:38 +0000)]
currenttriangle and currentvertex no longer exist, also firstvert and firsttriangle no longer exist in the internal mesh structure

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2334 d7cf8633-e32d-0410-b094-e92efae38249

18 years agosurfvertex_t is gone, in it's place are non-interleaved arrays, which keeps things...
havoc [Thu, 5 Sep 2002 14:24:16 +0000 (14:24 +0000)]
surfvertex_t is gone, in it's place are non-interleaved arrays, which keeps things simpler...

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2333 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomoved state update from R_Mesh_Render to R_Mesh_Draw_GetBuffer
havoc [Thu, 5 Sep 2002 14:22:28 +0000 (14:22 +0000)]
moved state update from R_Mesh_Render to R_Mesh_Draw_GetBuffer

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2332 d7cf8633-e32d-0410-b094-e92efae38249

18 years agobuf_mesh is no longer a pointer, since there is only one of it
havoc [Thu, 5 Sep 2002 13:05:23 +0000 (13:05 +0000)]
buf_mesh is no longer a pointer, since there is only one of it

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2331 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoadded r_surfaceworldnode and r_cullsurface cvars (it is recommended that these both...
havoc [Thu, 5 Sep 2002 12:07:55 +0000 (12:07 +0000)]
added r_surfaceworldnode and r_cullsurface cvars (it is recommended that these both be on, or both be off)
shuffled around WorldNode, DrawSurfaces, PrepareSurfaces, SurfMarkLights, and other related code a great deal, it is now somewhat cleaner

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2330 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoadded getsurfaceclippedpoint builtin
havoc [Thu, 5 Sep 2002 10:24:32 +0000 (10:24 +0000)]
added getsurfaceclippedpoint builtin

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2329 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoyou can now (try to) play in maps you don't have, and models you don't have are shown...
havoc [Thu, 5 Sep 2002 10:10:47 +0000 (10:10 +0000)]
you can now (try to) play in maps you don't have, and models you don't have are shown as little multicolored things
added CL_BoundingBoxForEntity to clean up the various mins/maxs calculations in the engine
no longer spews clc_nops to server past the first signon stage
the clc_nops sent to the server are now sent using unreliable packets (because queuing them up as reliable made no sense and spewed warnings when developer was on)
failed client to server reliable messages now print a hexdump of the message contents when developer is on
there is now Mod_PointContents (this is different than Mod_PointInLeaf because a lot of calls to Mod_PointInLeaf were just wanting the contents, and it's not convenient to check for NULL (no world model) in the caller
r_speeds no longer reports a "walls" count, as it was often nearly identical to faces and simplified the code to remove it
r_speeds faces count may count bmodels twice if some contain sky polygons (this is less technically correct, but more performance correct - it is processing the faces twice)
DrawQ_Pic won't crash if given a NULL picname now (won't draw it either)
r_cullsurfaces cvar added
r_surfacesworldnode cvar added
surface backface culling moved to PrepareSurfaces
simplified a lot of worldnode related stuff
surf->pvsframe and node->pvsframe and leaf->pvsframe simplified worldnode code, and only needs updating when leaf changes (this is partly how quake did things)
leaf->visframe no longer exists, this meant changing/cleaning a lot of code
leaf->dlightbits and leaf->dlightframe no longer exist, this meant doing TraceLine's to see if dlights should shine on models and such (but only if within radius of them)
console is forced if there's nothing else to look at, this is tracked separately from whether the user wants a console (key_consoleactive is now bits, but most code should just check if it is non-zero)
RecursiveHullCheckPoint has been enabled again, only invoked if trace length is exactly 0
SZ_GetSpace overflow warnings/errors have newlines at the end now
R_VisibleCullBox is gone (it relied on leaf->visframe), uses R_CullBox instead
move around some R_NewMap code into more suitable modules
rearranged R_RenderView code a lot, to group things more appropriately
dlights work correctly on bmodels now
PR_Crash function added, to properly shutdown progs interpreter (reset it's stack) and print out a crash report
PR_RunError went away, it has been replaced by Host_Error (which now calls PR_Crash incase it happend during progs execution)
R_ResetQuakeSky and R_ResetSkyBox added, to clean up some sky related hacks in model loading
various QC builtins added for getting info on surfaces from the engine

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2328 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoyou can now open/close the console independently of menu and messagemode
havoc [Mon, 2 Sep 2002 10:44:25 +0000 (10:44 +0000)]
you can now open/close the console independently of menu and messagemode
console catchs input before anything else
console appears ontop of anything else
console is no longer forced fullscreen when there is nothing else to show
shuffled around the 2D drawing calls in CL_UpdateScreen
now only console pauses singleplayer, instead of console/menu/messagemode
simplified console singleplayer pausing code a bit
mouse grabbing is now only forced off when console is down, not when menu or messagemode is shown

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2327 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomake sure zFar is at least 64 units to avoid feeding a bogus value to glFrustum
havoc [Mon, 2 Sep 2002 06:46:43 +0000 (06:46 +0000)]
make sure zFar is at least 64 units to avoid feeding a bogus value to glFrustum

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2326 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoUpdated Transfusion map list
molivier [Mon, 2 Sep 2002 06:20:07 +0000 (06:20 +0000)]
Updated Transfusion map list

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2325 d7cf8633-e32d-0410-b094-e92efae38249

18 years agodon't allocate resizebuffer for an R_Upload that doesn't need it (native RGB or RGBA...
havoc [Sun, 1 Sep 2002 12:24:44 +0000 (12:24 +0000)]
don't allocate resizebuffer for an R_Upload that doesn't need it (native RGB or RGBA fragment texture)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2324 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofree texture processing buffers each frame so they don't hang around wasting memory
havoc [Sun, 1 Sep 2002 01:06:02 +0000 (01:06 +0000)]
free texture processing buffers each frame so they don't hang around wasting memory

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2323 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoreduced default max particles from 16384 to 8192
havoc [Sun, 1 Sep 2002 01:05:02 +0000 (01:05 +0000)]
reduced default max particles from 16384 to 8192

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2322 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoimproved pr_fields command to list how many entities are using each entity field...
havoc [Sat, 31 Aug 2002 09:17:29 +0000 (09:17 +0000)]
improved pr_fields command to list how many entities are using each entity field and give more information on how many fields are needed and how much memory they need

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2321 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoremoved console text left/right edge margins (giving an extra 2 chars per line)
havoc [Sat, 31 Aug 2002 09:15:24 +0000 (09:15 +0000)]
removed console text left/right edge margins (giving an extra 2 chars per line)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2320 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoweapon models were not being lit in maps using .lights
havoc [Fri, 30 Aug 2002 13:18:11 +0000 (13:18 +0000)]
weapon models were not being lit in maps using .lights

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2319 d7cf8633-e32d-0410-b094-e92efae38249

18 years agocommented out bit-hacking 1/sqrt code
havoc [Fri, 30 Aug 2002 13:17:32 +0000 (13:17 +0000)]
commented out bit-hacking 1/sqrt code

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2318 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoconsistency cleanup of a (disabled) part of Invert_Simple
havoc [Fri, 30 Aug 2002 13:16:43 +0000 (13:16 +0000)]
consistency cleanup of a (disabled) part of Invert_Simple

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2317 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoMSVC updated the project file, why I'm not sure, oh well...
havoc [Fri, 30 Aug 2002 13:13:56 +0000 (13:13 +0000)]
MSVC updated the project file, why I'm not sure, oh well...

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2316 d7cf8633-e32d-0410-b094-e92efae38249

18 years agochanged to use C runtime library DLL instead of static linking it
havoc [Fri, 30 Aug 2002 13:09:25 +0000 (13:09 +0000)]
changed to use C runtime library DLL instead of static linking it

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2315 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofixed models getting dark in the distance when fogged bug (thanks to Elric for report...
havoc [Fri, 30 Aug 2002 09:33:04 +0000 (09:33 +0000)]
fixed models getting dark in the distance when fogged bug (thanks to Elric for reporting this, trivial fix, was a silly mistake on my part)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2314 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofixed bug which caused all models to be untextured if they used internal skins
havoc [Fri, 30 Aug 2002 02:20:42 +0000 (02:20 +0000)]
fixed bug which caused all models to be untextured if they used internal skins

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2313 d7cf8633-e32d-0410-b094-e92efae38249

18 years agodraw models which have no textures using the notexture checkerboard
havoc [Fri, 30 Aug 2002 02:06:14 +0000 (02:06 +0000)]
draw models which have no textures using the notexture checkerboard

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2312 d7cf8633-e32d-0410-b094-e92efae38249

18 years agosupport for loading external skins that don't exist inside the model
havoc [Fri, 30 Aug 2002 01:27:17 +0000 (01:27 +0000)]
support for loading external skins that don't exist inside the model

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2311 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofixed viewmodel (it wasn't drawing because it's matrix was empty), fixed a bug with...
havoc [Thu, 29 Aug 2002 14:14:34 +0000 (14:14 +0000)]
fixed viewmodel (it wasn't drawing because it's matrix was empty), fixed a bug with scaling in Matrix4x4_CreateFromQuakeEntity (and Matrix3x4 to match), added some extra code to Matrix4x4_Invert_Simple (and Matrix3x4) to further clarify the scaling inversion

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2310 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofixed crash when ent->skinnum >= model->numskins
havoc [Thu, 29 Aug 2002 12:45:24 +0000 (12:45 +0000)]
fixed crash when ent->skinnum >= model->numskins

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2309 d7cf8633-e32d-0410-b094-e92efae38249

18 years agospeed gain in lightmap updates
havoc [Thu, 29 Aug 2002 12:44:34 +0000 (12:44 +0000)]
speed gain in lightmap updates

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2308 d7cf8633-e32d-0410-b094-e92efae38249

18 years agooptimizations to rendering
havoc [Wed, 28 Aug 2002 14:33:20 +0000 (14:33 +0000)]
optimizations to rendering
particle lighting is no longer supported, sorry
particle visibility is no longer checked, it was wasting too much time

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2299 d7cf8633-e32d-0410-b094-e92efae38249

18 years agofix various fog bugs, and also fix missing colormap layer bugs (specifically if the...
havoc [Wed, 28 Aug 2002 13:35:31 +0000 (13:35 +0000)]
fix various fog bugs, and also fix missing colormap layer bugs (specifically if the base/merged texture is missing, as it is on a lava ball for instance)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2298 d7cf8633-e32d-0410-b094-e92efae38249

18 years agono more m.transparent, transparent surfaces are sorted using MeshQueue now
havoc [Wed, 28 Aug 2002 12:56:12 +0000 (12:56 +0000)]
no more m.transparent, transparent surfaces are sorted using MeshQueue now
glow textures were being rendered using detail texture coordinates, fixed

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2297 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoadded lighting options (and explosion clipping) to effects options menu
havoc [Wed, 28 Aug 2002 12:14:11 +0000 (12:14 +0000)]
added lighting options (and explosion clipping) to effects options menu

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2296 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomost of the framework for hardware accelerated transforms is back, just the actual...
havoc [Wed, 28 Aug 2002 11:56:00 +0000 (11:56 +0000)]
most of the framework for hardware accelerated transforms is back, just the actual gl calls need to be put in, but that will be a later commit
gl_backend internal mesh structure now has a matrix stored in it
entity_render_t now has a matrix and a inverse matrix
many additions of const to various functions, this required restructuring some code
transparent mesh sorting is gone, this also means subsorting of triangles by depth is gone (meshqueue should be used for transparent mesh sorting, I have not yet written a new triangle sorter)
rewrote RSurf_ shader functions *yet again*, they are now more compact and share code (by way of using lots of function calls)
lots of changes/bugfixes/additions to matrixlib.c and .h, including an actual working Matrix4x4_Invert_Simple function
added gl_flashblend (brightens and enlarges coronas, turns off all actual lighting)
added r_coronas (can turn off coronas)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2295 d7cf8633-e32d-0410-b094-e92efae38249

18 years agogot rid of dlightradius variable which was never actually used
havoc [Wed, 28 Aug 2002 06:46:21 +0000 (06:46 +0000)]
got rid of dlightradius variable which was never actually used

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2294 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoliquid now goes through meshqueue sorting
havoc [Tue, 27 Aug 2002 11:59:28 +0000 (11:59 +0000)]
liquid now goes through meshqueue sorting
fixed a bunch of minor sorting consistency bugs in the meshqueue code
changed behavior of R_MeshQueue_EndScene and exposed R_MeshQueue_Render and R_MeshQueue_RenderTransparent
cleaned up liquid rendering code a bit

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2293 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoforgot a m.transparent = in the last commit, and removed a comment
havoc [Tue, 27 Aug 2002 10:04:57 +0000 (10:04 +0000)]
forgot a m.transparent = in the last commit, and removed a comment

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2292 d7cf8633-e32d-0410-b094-e92efae38249

18 years agogot rid of lots of unnecessary m.transparent = lines, as well as some depthdisable...
havoc [Tue, 27 Aug 2002 09:49:54 +0000 (09:49 +0000)]
got rid of lots of unnecessary m.transparent = lines, as well as some depthdisable =, and depthwrite =

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2291 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoengine mostly converted to use R_MeshQueue functions instead of true transparent...
havoc [Tue, 27 Aug 2002 09:42:59 +0000 (09:42 +0000)]
engine mostly converted to use R_MeshQueue functions instead of true transparent meshs, this meant getting rid of currentrenderentity
the rest of the conversion to R_MeshQueue will be in a future commit, just wanted to get this in now

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2290 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoAdded a new cvar sv_echobprint which controls the printing of broadcast messages...
molivier [Mon, 26 Aug 2002 14:00:56 +0000 (14:00 +0000)]
Added a new cvar sv_echobprint which controls the printing of broadcast messages in dedicated server mode. It's on by default.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2289 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoFixed a potential buffer overflow in Con_DebugLog
molivier [Mon, 26 Aug 2002 06:24:30 +0000 (06:24 +0000)]
Fixed a potential buffer overflow in Con_DebugLog

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2288 d7cf8633-e32d-0410-b094-e92efae38249

18 years agorenamed mesh_ variables to gl_state. (created a struct for this purpose)
havoc [Mon, 26 Aug 2002 05:40:47 +0000 (05:40 +0000)]
renamed mesh_ variables to gl_state. (created a struct for this purpose)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2287 d7cf8633-e32d-0410-b094-e92efae38249

18 years agogot rid of R_Mesh_Draw and R_Mesh_DrawPolygon, now all 3D geometry is drawn using...
havoc [Sun, 25 Aug 2002 15:45:41 +0000 (15:45 +0000)]
got rid of R_Mesh_Draw and R_Mesh_DrawPolygon, now all 3D geometry is drawn using R_Mesh_Draw_GetBuffer and R_Mesh_Render

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2285 d7cf8633-e32d-0410-b094-e92efae38249

18 years agobatching is gone.
havoc [Sun, 25 Aug 2002 12:26:23 +0000 (12:26 +0000)]
batching is gone.
if you forget to call R_Mesh_Render after each mesh the backend system will yell at you.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2284 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomonster movement interpolation now works in both protocols (shared code), this bloate...
havoc [Sun, 25 Aug 2002 11:12:01 +0000 (11:12 +0000)]
monster movement interpolation now works in both protocols (shared code), this bloated the entity persistent struct a bit more unfortunately

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2283 d7cf8633-e32d-0410-b094-e92efae38249

18 years agodetail texturing added (although with just one generated texture applied to everything)
havoc [Sat, 24 Aug 2002 07:14:15 +0000 (07:14 +0000)]
detail texturing added (although with just one generated texture applied to everything)
detail texturing makes use of up to 3 texture units if you have combine
detail texturing added to effects options menu (r_detailtextures cvar)
surfvertex_t now has another set of texcoords, for detail texturing
Mod_BrushStartup and Mod_BrushShutdown functions added to alloc/free the detail texture
r_multitexture cvar renamed to r_textureunits, so you can limit number of texture units enabled for testing, rather than just as a yes/no kind of option
gl_combine is forced to 0 if r_textureunits is less than 2 (this is purely for consistency, not of any importance)
split up the wall rendering into two kinds - vertex lit with optional transparency, and opaque lightmapped with no support for transparency
R_Mesh_Draw_GetBuffer now takes a wantoverbrights parameter, if false it will not use the 4x overbright (even if combine is enabled), this is useful to improve the color precision of anything which does not need overbright
fixed crosshair brightness (it was unintentionally adjusting the alpha using m.colorscale just like the RGB portion of the color)
sprites only use overbright if they are lit (normal unlit sprites are rendered without overbright)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2282 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoremoved check for registered.integer in GAME_NORMAL naming (this means it just says...
havoc [Fri, 23 Aug 2002 06:12:01 +0000 (06:12 +0000)]
removed check for registered.integer in GAME_NORMAL naming (this means it just says DarkPlaces-Quake whether the game is registered or not)
removed support for games FiendArena (because I have not heard from the author in a long time) and Zymotic (because the game was canceled long ago)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2281 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoFinally got rid of the last TRANSFUSION define (the key binding menu is determined...
molivier [Fri, 23 Aug 2002 06:04:40 +0000 (06:04 +0000)]
Finally got rid of the last TRANSFUSION define (the key binding menu is determined at runtime now). Also a few maps won't make it for the 1.0 release, so they've been removed from the map list.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2280 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoadded DP_SV_SLOWMO to extensions list
havoc [Thu, 22 Aug 2002 22:24:17 +0000 (22:24 +0000)]
added DP_SV_SLOWMO to extensions list

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2279 d7cf8633-e32d-0410-b094-e92efae38249

18 years agomade stains more small and focused
havoc [Thu, 22 Aug 2002 21:58:33 +0000 (21:58 +0000)]
made stains more small and focused

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2277 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoworkaround for gcc -funroll-loops bug with RLE compressed TGA, fixed LoadTGA (by...
havoc [Thu, 22 Aug 2002 07:30:58 +0000 (07:30 +0000)]
workaround for gcc -funroll-loops bug with RLE compressed TGA, fixed LoadTGA (by rewriting it), probably faster now too

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2276 d7cf8633-e32d-0410-b094-e92efae38249

18 years agoDisabled crosshair during intermission
molivier [Thu, 22 Aug 2002 06:13:21 +0000 (06:13 +0000)]
Disabled crosshair during intermission

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2275 d7cf8633-e32d-0410-b094-e92efae38249