havoc [Wed, 22 Jan 2003 00:42:05 +0000 (00:42 +0000)]
turned off mipmapping on attenuation texture
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2696
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 16 Jan 2003 23:53:26 +0000 (23:53 +0000)]
works with NULL worldmodel
fixed overbright lighting! (light flickering is now smooth and everything)
added r_editlights_rtlightssizescale and r_editlights_rtlightscolorscale which scale light properties when loading as well as saving (to undo the change - this can be exploited to modify all lights in the level)
reduced used area of attenuation texture a little to ensure black edges
changed defaults for attenuation texture settings and rtlights sizescale/colorscale to greatly improve performance while still looking good
now defaults to no fake bumpmapping on walls (saves texture memory and looks better to me)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2695
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 15 Jan 2003 13:21:19 +0000 (13:21 +0000)]
changed a debugging notice about texture loading
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2694
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 15 Jan 2003 13:13:28 +0000 (13:13 +0000)]
now checks for NULL worldmodel
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2693
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 15 Jan 2003 13:12:47 +0000 (13:12 +0000)]
now prints image size (was printing garbage before)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2692
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 15 Jan 2003 13:12:14 +0000 (13:12 +0000)]
tiny cleanup to RotatePointAroundVector (uses a VectorCopy instead of 3 lines)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2691
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 15 Jan 2003 13:09:16 +0000 (13:09 +0000)]
fixed bumpmapping! now looks correct
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2690
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 15 Jan 2003 13:05:32 +0000 (13:05 +0000)]
expanded string table offset table from 1024 to 65536, there must be a better solution than this though...
this fixes savegame loading (which allocates lots of negative string offsets)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2689
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 15 Jan 2003 13:01:21 +0000 (13:01 +0000)]
added developer_memory cvar (default off) to decide whether to print memory debugging messages if developer is on
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2688
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 15 Jan 2003 12:59:40 +0000 (12:59 +0000)]
now checks if worldmodel is NULL again, some comment cleanups and clarifications
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2687
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 15 Jan 2003 11:40:17 +0000 (11:40 +0000)]
cleanup of precache messages and assorted comments
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2686
d7cf8633-e32d-0410-b094-
e92efae38249
molivier [Mon, 6 Jan 2003 14:28:37 +0000 (14:28 +0000)]
E4M9 was added to the Transfusion map list
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2685
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 24 Dec 2002 23:00:59 +0000 (23:00 +0000)]
loadimagepixels is a little cleaner now (yes made cleaner by goto...) and dprints info about loaded images
critical bug in image_loadskin fixed (s->basepixels_width and height were not being set)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2684
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 24 Dec 2002 22:59:23 +0000 (22:59 +0000)]
detect bogus texture upload attempts and print the info to console
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2683
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 22 Dec 2002 22:56:09 +0000 (22:56 +0000)]
unified model skinframe loaders used for mdl, md2, md3, and bsp textures (both external and internal where applicable)
imageskin_t and image_loadskin/image_freeskin functions added to image.[ch] for use by the unified skinframe loaders
added palette_nocolormap
split r_shadow_bumpscale cvar into r_shadow_bumpscale_bumpmap (for _bump textures) and r_shadow_bumpscale_basetexture (self explanatory)
now loads _norm normalmap textures (tenebrae compatibility)
_nmap normalmap texture support removed (it was broken in the previous release and I don't need to bog down the texture loader with even more unnecessary names)
r_shadow_lightattenuationpower added (default 2, to leave it looking identical to previous versions, this controls the falloff curve of light)
renamed detailtextures array to mod_shared_detailtextures and moved it and related code to model_shared.[ch]
removed progs/missile.mdl shadow casting check (in r_shadow_realtime mode) I had forgotten to remove before committing last time
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2682
d7cf8633-e32d-0410-b094-
e92efae38249
molivier [Wed, 11 Dec 2002 17:51:31 +0000 (17:51 +0000)]
Some stupid Linux machines (i.e. Mandrake) seem to ignore their own network properties; in this case, we use the loopback address as the default one. Also, fixed an inoffensive bug when binding the UDP control socket.
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2681
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 11 Dec 2002 03:06:44 +0000 (03:06 +0000)]
I guess those glLoadIdentity calls were more important than expected
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2680
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 9 Dec 2002 12:37:59 +0000 (12:37 +0000)]
removed glLoadIdentity calls (they were all useless where they were used)
commented out unused GL functions
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2679
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 9 Dec 2002 12:35:08 +0000 (12:35 +0000)]
added Electro's smoke trail tweaks
decals now follow the bmodel they stuck to
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2678
d7cf8633-e32d-0410-b094-
e92efae38249
molivier [Tue, 3 Dec 2002 10:16:37 +0000 (10:16 +0000)]
Removed some warnings in MSVC6
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2677
d7cf8633-e32d-0410-b094-
e92efae38249
molivier [Tue, 3 Dec 2002 10:15:01 +0000 (10:15 +0000)]
Updated Transfusion map list
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2676
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 20:06:27 +0000 (20:06 +0000)]
fix textured DrawQ_Fill problem when DrawQ_Fill is the first 2d primitive rendered (thanks Tomaz)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2675
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 04:52:47 +0000 (04:52 +0000)]
another bugfix for WORKINGLQUAKE code
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2672
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 01:55:54 +0000 (01:55 +0000)]
md3 model support and some cleanups to skin loading and other things in the mdl and md2 loaders
md3 tags are not loaded yet
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2671
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 01:53:51 +0000 (01:53 +0000)]
beginnings of some proper server list code, commented out for now
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2670
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 01:52:13 +0000 (01:52 +0000)]
changed master server list around a bit (added rick.cube-sol.net and my master server as well)
master server list can now have gaps
ipaddr is now parsed from the getserversResponse properly (thanks Rick)
now reports port number in developer print for sending messages to master servers
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2669
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 01:43:50 +0000 (01:43 +0000)]
reverted to fast version of trianglefacinglight code, as it was found to be a speed gain in benchmarks compared to the light radius checking version
fixed an unitialized variable warning
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2668
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 01:33:33 +0000 (01:33 +0000)]
added loadtextureimagebumpasnmap
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2667
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 01:31:32 +0000 (01:31 +0000)]
water moves around again
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2666
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 01:28:30 +0000 (01:28 +0000)]
optimized single frame lerp case
removed FetchSkinFrame
mesh rendering loop now... advances the mesh
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2665
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 01:25:32 +0000 (01:25 +0000)]
cleaned up shadow volume culling somewhat
added r_shadow_cull cvar to decide whether or not to apply shadow volume culling
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2664
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 2 Dec 2002 00:42:25 +0000 (00:42 +0000)]
renamed and altered SZ_HexDumpToConsole to be Com_HexDumpToConsole which takes a qbyte * and a size, instead of a sizebuf_t
added SZ_HexDumptoConsole which just calls Com_HexDumpToConsole
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2663
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 1 Dec 2002 20:08:22 +0000 (20:08 +0000)]
fix compiling problems in MSVC (thanks Tomaz)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2662
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 1 Dec 2002 08:28:39 +0000 (08:28 +0000)]
a few more glquake and glqwcl compatibility fixes
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2661
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 1 Dec 2002 04:40:37 +0000 (04:40 +0000)]
added a simplified CL_TraceLine in the WORKINGLQUAKE code and enabled particle collisions in WORKINGLQUAKE
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2660
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sat, 30 Nov 2002 09:44:26 +0000 (09:44 +0000)]
decals added back due to popular demand, currently not at all optimized (they're just particles) and not clipped to surfaces
cl_decals 1 to enable (this is saved to config), cl_decals_time and cl_decals_fadetime change settings for them (these are also saved to config)
redesigned particle additive flag to be a blend mode number (PBLEND_ALPHA, PBLEND_ADD, or PBLEND_MOD - for decals), lots of special hacks for the nifty new PBLEND_MOD mode
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2659
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Fri, 29 Nov 2002 00:33:13 +0000 (00:33 +0000)]
-width and -height can now be used alone (instead of having to use both) for better compatibility with stock glquake behavior
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2658
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 28 Nov 2002 03:41:10 +0000 (03:41 +0000)]
mdl/md2 transitioned to meshes
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2657
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 28 Nov 2002 02:33:39 +0000 (02:33 +0000)]
most of the new alias mesh system is in place now...
reversed lighting direction in R_LightModel because it was backwards (weird...)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2656
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 27 Nov 2002 00:22:15 +0000 (00:22 +0000)]
changed format of aliasvertex_t to use floats (hopefully this is a speedup, it sure bloats memory use - 36 bytes each, compared to 4 bytes in mdl/md2)
corrected scale for md3 vertices mentioned in header (md3 is still not supported yet)
added some unfinished mesh structures to begin support for md3
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2655
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 26 Nov 2002 21:01:02 +0000 (21:01 +0000)]
cleaned up md3 structs
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2654
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 26 Nov 2002 20:55:37 +0000 (20:55 +0000)]
removed model_t mdlmd2data_frames (no longer needed)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2653
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 26 Nov 2002 20:49:13 +0000 (20:49 +0000)]
mdl and md2 vertices are now stored in a different structure called aliasvertex_t, it has all the features of mdl, md2 and md3 formats and simplifies interpolation, it also has precomputed texture vectors for faster realtime lighting.
normals are no longer interpolated if not needed (fake shadows and shadow volumes do not need them)
added VectorM, VectorMAM, VectorMAMAM and VectorMAMAMAM macros to make aliasvertex_t interpolation code more readable
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2652
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 26 Nov 2002 20:38:41 +0000 (20:38 +0000)]
BuildTriangleNeighbors now detects edges shared by three triangles, fixes weird shadow bugs in a few places
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2651
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 25 Nov 2002 01:16:06 +0000 (01:16 +0000)]
most of Q2's keyboard handling ported over - what this means: keypad is now separately bindable (bind kp_pgup and such)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2650
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 25 Nov 2002 01:08:50 +0000 (01:08 +0000)]
reverse engineered md3 format and wrote struct declarations (this is *NOT* based on Q3 SDK source)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2649
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Fri, 22 Nov 2002 12:43:30 +0000 (12:43 +0000)]
r_shadows is now ignored when in r_shadow_realtime mode
r_shadow_realtime 3 added (no depth test on visible shadow volumes)
visible shadow volumes now have backface culling disabled, to better demonstrate the overdraw
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2645
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 21 Nov 2002 18:26:48 +0000 (18:26 +0000)]
implemented PR_GetString and PR_SetString from QWSV source, these work around the map change crash bugs in gcc 2.95.3
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2644
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 21 Nov 2002 18:24:38 +0000 (18:24 +0000)]
defaulting to r_surfaceworldnode 1
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2643
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 21 Nov 2002 10:56:30 +0000 (10:56 +0000)]
fixed a silly and harmless typo in RSurfShader_Water (*chain++ should have been chain++)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2642
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 20 Nov 2002 12:54:15 +0000 (12:54 +0000)]
CalcSurfaceExtents now uses surf->poly_verts instead of edges
brush model bounding box calculations are now based on meshes instead of edges
CalcSurfaceExtents has been merged into Mod_GenerateSurfacePolygon
msurface_t firstedge and numedges have been removed (they were only used for generating the polygon during loading)
shuffled around msurface_t fields in order of most common access at the top, to least common at the bottom, this is in an attempt to reduce wasted memory traffic
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2640
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 20 Nov 2002 11:18:50 +0000 (11:18 +0000)]
removed all 3x4 matrix support (wasn't used, and isn't likely to ever be used)
moved Matrix4x4_Print to mathlib.[ch] because it really doesn't belong in the entirely quake-independent matrixlib.[ch]
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2639
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 20 Nov 2002 11:10:37 +0000 (11:10 +0000)]
softwaretransform hasn't been used in ages, I thought I had already gotten rid of it...
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2638
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sat, 16 Nov 2002 13:52:08 +0000 (13:52 +0000)]
got rid of all the (no longer used) cached_ fields in the msurface_t struct, except for cached_dlight
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2632
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sat, 16 Nov 2002 13:35:36 +0000 (13:35 +0000)]
merged GL_DrawRangeElements into R_Mesh_Draw for a mild speed gain
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2631
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sat, 16 Nov 2002 12:49:34 +0000 (12:49 +0000)]
lightmap update checking is now handled very differently; each brush model has a set of lightmap chains for each light style, and they are marked if the light style's value changes, similarly dlights mark surfaces they touch as well... both use surf->cached_dlight... this doesn't seem to be a speed gain (or loss) at present, but allows further restructuring which should be a speed gain
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2630
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sat, 16 Nov 2002 01:24:03 +0000 (01:24 +0000)]
rewrote how texture chains are handled, they are now stored outside the surfaces, and are rebuilt as the player moves through the world (bmodel texture chains are just left untouched)
good efficiency improvement I think
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2629
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sat, 16 Nov 2002 01:00:26 +0000 (01:00 +0000)]
fixed fiends teleporting when they check if a jump is a good one or not
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2628
d7cf8633-e32d-0410-b094-
e92efae38249
molivier [Thu, 14 Nov 2002 08:05:05 +0000 (08:05 +0000)]
The Linux version doesn't need libjpeg.h anymore
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2621
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 11 Nov 2002 21:36:09 +0000 (21:36 +0000)]
thanks to Vic for pointing out the fact I should be using + 0.5f when dealing with the alias texcoords
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2620
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 11 Nov 2002 05:04:53 +0000 (05:04 +0000)]
thanks to Tomaz for finding a severe bug in CopyTranslateOnly (it was copying the X translate into all 3 translate components)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2619
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 10 Nov 2002 05:03:42 +0000 (05:03 +0000)]
added Nexiuz TE_ effects (prefixed TE_TEI_) and Nexiuz plasma trail (an override for EF_BRIGHTFIELD)
Nexiuz mode disables fullbrights
reshaped some of the particle structure (flags is gone, broken apart into separate fields again)
added tex_beam (which uses a separate texture instead of the particle font because it needs to repeat)
simplified some of the texture font generation (tex_ variables now indicate where to put the images in the texture)
now resets trail positions if entity was not active in previous frame
now gives packet dump when Host_Error is called during client message parsing code
now frees the model(s) being loaded when Host_Error is called during model loading code
removed modelflush command because it crashes the realtime lighting code (which points to leafs and surfaces in the world model, a problem which does not exist with r_restart and vid_restart)
R_Stain and R_CalcBeamVerts now use const where appropriate
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2618
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 10 Nov 2002 02:51:31 +0000 (02:51 +0000)]
add GAME_NEXIUZ gamemode
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2617
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 10 Nov 2002 02:49:45 +0000 (02:49 +0000)]
fixed Mod_LoadZymoticModel - it had TONS of crashs
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2616
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 10 Nov 2002 02:34:19 +0000 (02:34 +0000)]
fix crashs on maps with missing textures
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2615
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 10 Nov 2002 02:26:47 +0000 (02:26 +0000)]
fix which crosshair texture is used
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2614
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 10 Nov 2002 02:22:43 +0000 (02:22 +0000)]
don't send free entities! (I've been observing this bug for months)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2613
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Fri, 8 Nov 2002 23:26:54 +0000 (23:26 +0000)]
Elric's changes:
JPEG texture loading using libjpeg (entirely optional at runtime - if not present, it won't load it)
gl_extensionfunctionlist_t is now renamed dllfunction_t and part of a shared system for library opening/function retrieval (functions Sys_LoadLibrary, Sys_GetProcAddress, Sys_UnloadLibrary - for this the library handles are considered void *'s)
LordHavoc's changes:
fixed libjpeg support in non-win32 by using jpeglib.h - honors jpeglib.h's idea of boolean - Linux libjpeg is compiled with boolean as int, unlike windows where it is apparently byte - unfortunately this also means you need libjpeg-devel installed to compile it in non-win32, not sure what can be done about this (but most people seem to have that anyway...)
looks for libjpeg.so.62 instead of libjpeg.so
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2610
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 7 Nov 2002 20:50:05 +0000 (20:50 +0000)]
glossmap textures are now brighter (no change to forced gloss brightness)
now clears lights when reloading lights
r_editlights_quakelightsizescale cvar added, default 0.8, controls size of lights imported from maps, gets a major speed gain but makes the map a little darker
R_Shadow_NewWorldLight now checks if radius or color is too dim and won't spawn such lights
in editing mode the centers of lights are visible now (as crosshair images)
light selection is now done a bit differently - the more precisely you point at a light, the higher it's rating gets, sometimes surpassing the closer lights in the area
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2609
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 7 Nov 2002 20:42:36 +0000 (20:42 +0000)]
changed a server protocol error to use Host_Error
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2608
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 7 Nov 2002 20:41:50 +0000 (20:41 +0000)]
when realtime mode fails now mentions setting vid_bitsperpixel to 32 as well
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2607
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 7 Nov 2002 20:40:28 +0000 (20:40 +0000)]
LoadTGA now loads colormapped and greyscale targas (as found in qe1m1 project)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2606
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 7 Nov 2002 20:38:57 +0000 (20:38 +0000)]
don't allow stencil without bitsperpixel 32
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2605
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 4 Nov 2002 15:56:31 +0000 (15:56 +0000)]
added comments explaining what all the fields of surfmesh_t do
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2600
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 4 Nov 2002 01:28:08 +0000 (01:28 +0000)]
removed use of 3D textures
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2599
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 4 Nov 2002 01:23:30 +0000 (01:23 +0000)]
renamed r_staticworldlights to r_shadow_staticworldlights
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2598
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 4 Nov 2002 01:09:33 +0000 (01:09 +0000)]
now clears stencil to 128 instead of 0, this avoids problems with arbitrary incr/decr orders
stencil shadows are now always erased by glClear, never by drawing again, removes r_shadow_erasebydrawing cvar
shadow volumes now have a nudge away from the surface that cast them, this is controlled by the r_shadow_shadownudge cvar (default 1 unit), avoids rare z fighting issues
shadow volume projection distance is now not infinite for alias model volumes, because they are more well-behaved than the world shadows...
msurface_t poly_radius and poly_radius2 removed
now validates elements in more parts of loading (hoped this would reveal a model shadow bug, but it didn't)
Mod_ShadowMesh_AddVertex now uses a hash table search to speed up static shadow volume building (unfortunately this doesn't seem to be the real speed problem)
removed ALLOCMESHINPIECES option from Mod_ShadowMesh code
removed non-PRECOMPUTEDSHADOWVOLUMES option from static shadow volume creation
removed some unused variables
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2597
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 3 Nov 2002 23:10:45 +0000 (23:10 +0000)]
fix polygon distance checks (the radius comparison was completely wrong)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2596
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 3 Nov 2002 23:07:26 +0000 (23:07 +0000)]
added support for glPolygonOffset (not used though)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2595
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 31 Oct 2002 15:35:42 +0000 (15:35 +0000)]
untested support for tenebrae override/ textures directory
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2593
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Thu, 31 Oct 2002 15:17:40 +0000 (15:17 +0000)]
make view kicks (both angle and origin) occur before gun is oriented, so it follows the view exactly
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2592
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 30 Oct 2002 15:28:26 +0000 (15:28 +0000)]
fixed all the signed/unsigned mismatch warnings
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2591
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 30 Oct 2002 15:23:48 +0000 (15:23 +0000)]
commented out two unused static const int variables gcc 3.3 noticed
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2590
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Wed, 30 Oct 2002 11:46:08 +0000 (11:46 +0000)]
fix viewmodel crash
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2589
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 29 Oct 2002 21:06:11 +0000 (21:06 +0000)]
minor update to texture flags and logic stuff
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2588
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 29 Oct 2002 21:04:07 +0000 (21:04 +0000)]
fix for use of cubemaps on hardware without 3d texture support
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2587
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 29 Oct 2002 19:29:58 +0000 (19:29 +0000)]
view model is now properly lit in realtime mode
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2586
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 29 Oct 2002 18:55:05 +0000 (18:55 +0000)]
color the torch light
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2585
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 29 Oct 2002 18:36:06 +0000 (18:36 +0000)]
tweak large flame lights a bit more
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2584
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 29 Oct 2002 18:31:12 +0000 (18:31 +0000)]
bumpscale is now adjustable (r_shadow_bumpscale) for experimenting (it's not saved to config)
.lights loading now has the correct light intensity
torchs now spawn lights above their location so the shadow is cast down, not up
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2583
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 29 Oct 2002 18:01:43 +0000 (18:01 +0000)]
now lights are automatically loaded from the .bsp, .lights, or .rtlights if available
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2582
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 29 Oct 2002 15:44:15 +0000 (15:44 +0000)]
* LordHavoc slaps self for having loadmodel->mempool references where he should have had r_shadow_mempool references
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2581
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Tue, 29 Oct 2002 15:36:49 +0000 (15:36 +0000)]
changed how QC interpreter handles edict field access - the entvars struct is now a pointer - yes this changed that many files...
discovered gcc 2.95.3 is the sole cause of map change crashs in the QC interpreter - it does not compile pr_exec.c correctly somehow (I think OP_ADDRESS is the only place it has a problem), makefile now refers to gcc-3.1 (maybe this should be changed, but oh well for now)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2580
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 28 Oct 2002 14:26:49 +0000 (14:26 +0000)]
faster number to edict lookup (sv.edictstable) and faster edict to number lookup (edict_t now has a number inside it)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2574
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 28 Oct 2002 14:24:33 +0000 (14:24 +0000)]
check for negative pr_depth in PR_Crash just to be obsessive
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2573
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 28 Oct 2002 14:23:41 +0000 (14:23 +0000)]
fixed CopyEntity builtin, now only copies the vars (not the physics info and such)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2572
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Mon, 28 Oct 2002 09:17:44 +0000 (09:17 +0000)]
implemented scissor rect clipping of lights in realtime lighting mode
DP is no longer fillrate limited on my GF4 at 640x480 :)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2571
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 27 Oct 2002 13:15:43 +0000 (13:15 +0000)]
gloss now works correctly
major speedups to realtime lighting mode (it's now actually playable on my machine)
world lights are now handled by r_shadow.c instead of the lights list in the world model
world lights can be ingame edited/loaded/saved (the file name ends in .rtlights), this is all controlled by r_editlights* commands/cvars
realtime lighting cvars renamed from r_light_* to r_shadow_*
r_shadow_realtime takes the place of r_shadows modes 2 and 3, mode 1 is realtime lighting, mode 2 is realtime lighting plus visible shadow volumes overlaid
r_shadow_lightingmode variable added (updated each frame) indicating whether or not realtime lighting is active
changed how player model and chase_active is handled (player model is now considered a forced RENDER_EXTERIORMODEL), so player now casts shadows
R_Shadow_Volume no longer takes a vertex parameter, it is implied that it is in varray_vertex (since all the code relied on this fact anyway)
R_Shadow_Volume's code has been split out into reusable functions (R_Shadow_ProjectVertices, R_Shadow_MakeTriangleShadowFlags, R_Shadow_BuildShadowVolumeTriangles)
R_Shadow_RenderLighting split into R_Shadow_DiffuseLighting and R_Shadow_SpecularLighting since sometimes it's usable to use more than one call to diffuse lighting (colormapped models)
R_Model_Alias_DrawLight now handles colormapping
added Light_CullBox and LightAndVis_CullBox functions for culling shadow volumes
R_DrawWorldLightShadowVolume has been moved to r_shadow.c
Mod_ShadowMesh_Begin now takes an initial number of triangles to hold, number of triangles in each additional shadowmesh is now based on previous mesh
R_Model_Brush_DrawLightForSurfaceList added to greatly reduce wasted lighting
rewrote visibility logic in R_Model_Brush_DrawLight, now uses different approachs for bmodels and world
lights are now pvs culled (according to what leafs are visible to the viewer, and what leafs are visible to the light)
R_Shadow_Stage_EraseShadowVolumes now returns an int, indicating whether or not to draw the shadow volumes again to erase
rewrote how texture info based on entity and time is updated (it is now a function called R_UpdateTextureInfo)
fixed a ton of bugs relating to animated textures and transparency of bmodels (also changed texture_t currentframe to no longer be an array)
disabled building of surface neighbors (oh sure I made it a lot faster and stuff, but it's still not practical, and is no longer necessary)
changed parameters of model_t DrawLight function to no longer take distbias and subtract
Mod_ProcessLightList is no longer called
mlight_t fields relating to shadow volumes have been commented out
Mod_ValidateElements function added
notes on enormous cost added to Mod_BuildTextureVectorsAndNormals (188 float operations per triangle, and 39 float operations per vertex)
added (disabled) code for allocating and freeing shadowmeshs in pieces, just for obsessive memory corruption detection (none was found)
Mod_ShadowMesh_AddTriangle and Mod_ShadowMesh_AddMesh functions added, and Mod_ShadowMesh_AddPolygon now uses AddTriangle (this is a slowdown but I'm not sure it matters that it is, it fills out meshs more completely)
added (disabled) code for Mod_ShadowMesh_Finish to work without reallocating meshs
R_Shadow_ResizeTriangleFacingLight and R_Shadow_ResizeShadowElements added
R_Shadow_RenderShadowMeshVolume added (properly renders shadowmesh_t chains, fixing all the bugs with static shadow volume rendering)
r_shadow_blankbumptexture is now 1x1
r_shadow_blankglosstexture and r_shadow_blankwhitetexture added (both 1x1)
added a 4 texture path for r_shadowtexture3d 0 mode
when static shadow volumes are constructed for world lights, it is now done by constructing a combined mesh of all lit geometry, and then casting shadows from that (this reduces shadow volume edges greatly, since separate polygons become a continuous mesh during the mesh creation)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2570
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 27 Oct 2002 13:10:42 +0000 (13:10 +0000)]
added a FIXME note about skyboxes and vid_restart
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2569
d7cf8633-e32d-0410-b094-
e92efae38249
havoc [Sun, 27 Oct 2002 12:13:53 +0000 (12:13 +0000)]
set depth and stencil clear values
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2568
d7cf8633-e32d-0410-b094-
e92efae38249