divverent [Mon, 12 Nov 2007 14:28:40 +0000 (14:28 +0000)]
move two #defined to quakedef.h, and always include quakedef.h first before any other includes, even system headers. This is to make compilation with gcc -combine work. Also, fix some type mismatches between source files.
havoc [Mon, 12 Nov 2007 10:45:37 +0000 (10:45 +0000)]
added a non-diffuse non-specular path for model lighting in the GLSL
shader, this fixes a bug that caused the engine to generate normals and
tangents for every model in q1bsp maps unnecessarily because of an
incorrect need for a normalmap
havoc [Fri, 9 Nov 2007 21:19:17 +0000 (21:19 +0000)]
increased minimum cl_maxfps value from 1 to 5 (but removed the value
changing code)
implemented minimum cl_maxidlefps value of 5
tweaked code that snaps very small or negative values of slowmo to 0
divverent [Fri, 9 Nov 2007 15:03:13 +0000 (15:03 +0000)]
add new console command "fixtrans", usage: fixtrans gfx/foo.tga - writes a new fixtrans/gfx/foo.tga with alpha-zero pixels changed to values around them. Helps with weird seams on badly made transparent images.
divverent [Fri, 9 Nov 2007 13:33:44 +0000 (13:33 +0000)]
add cvar cl_movement_track_canjump (when off, client prediction allows "pogoing" by holding the jump key all the time; this also seems to behave better than the current behaviour which too often sticks you to the floor)
divverent [Fri, 9 Nov 2007 13:25:10 +0000 (13:25 +0000)]
(Nexuiz) show people who are still downloading as -666 (like spectators) in scoreboard. Should get replaced by some way to completely hide them from scoreboard, but still show them in status, ping etc.
black [Thu, 8 Nov 2007 20:23:50 +0000 (20:23 +0000)]
- add support for server list refreshes to netconn (more refactoring will follow soon)
- change MQC's refreshserverlist builtin to refresh the serverlist by default (which actually does what the function name implies)
- also add a console command but it is kinda useless (except that it is probably faster because it doesnt wait for the master server's response to start querying)
havoc [Tue, 30 Oct 2007 17:27:19 +0000 (17:27 +0000)]
some reworking and cleanup of gravity handling in particles, this fixes
a bug with blood rarely sticking to surfaces (due to delayedcollisions),
the same bug also affected gib trails but was less noticable
divverent [Sat, 27 Oct 2007 10:59:44 +0000 (10:59 +0000)]
new menu QC builtin "stringwidth(string text, float handleColors)", does not do anything useful yet, but added for future expansion (variable width fonts); also add this to CSQC (see TODO in clvm_cmds.c)
havoc [Sun, 21 Oct 2007 11:21:47 +0000 (11:21 +0000)]
reverted the cleanup of entity state building because it was sapping
massive amounts of performance even with only 16 players, now it once
again builds them only once per frame and filters them per client
havoc [Thu, 18 Oct 2007 07:09:15 +0000 (07:09 +0000)]
fixed a bug in multiplayer savegame loading that caused all players
after the first one to respawn immediately after loading
(sv.loadgame and sv.paused were being cleared by the first player)
havoc [Wed, 17 Oct 2007 04:51:47 +0000 (04:51 +0000)]
implemented a fixed function fallback for water, but it is disabled
because of extreme distortion artifacts (it would need to use a cubemap
for perspective correction)
implemented two-pass rendering of water and refraction surfaces, this
enables blendfunc of the first layer to work properly, the old path is
still present but disabled
havoc [Mon, 15 Oct 2007 12:07:28 +0000 (12:07 +0000)]
implemented MATERIALFLAG_REFRACTION
changed syntax of dp_refract, dp_reflect, added dp_water
moved SHADERPERMUTATION and friends to gl_rmain.c
eliminated SHADERPERMUTATION_MASK by separating out SHADERTYPE_USES
other cleanup
divverent [Thu, 11 Oct 2007 22:08:05 +0000 (22:08 +0000)]
- fix SEGFAULT when a .shader file has more layers than allowed
- reduce number of layers from 8 to 2 to save memory (increase it later when additional layers are actually USED)
- parse ALL layers, even those behind the limit, to check for lightmap references and similar stuff
- when looking up a shader, only look through the actually DEFINED layers (not through all ALLOCATED ones), this means that the OS won't allocate pages more shaders than actually used
- increase maximum number of tcmods from 4 to 8 for Nexuiz
net: 1300MB -> 900MB vsize, and less RSS used too; so it won't swap any more on a 1GB system
divverent [Thu, 11 Oct 2007 14:06:13 +0000 (14:06 +0000)]
only print the "missing texture for missing shader" message for developer or Q3BSP (as other formats contain their own textures, and don't NEED the actual texture file)
divverent [Sun, 7 Oct 2007 09:04:05 +0000 (09:04 +0000)]
changed reflect/refract keywords to
dp_reflect <r> <g> <b>
dp_refract <reflectmin> <reflectmax> <distort> <r> <g> <b>
made dp_reflect work additively again (so perfect mirrors shall use a black texture)
divverent [Sat, 6 Oct 2007 19:24:44 +0000 (19:24 +0000)]
make bestweapon customizable using a new register_bestweapon command (DP_CON_BESTWEAPON); add a new cycleweapon command that works similarily to bestweapon, but cycles among the weapons in the list
havoc [Mon, 1 Oct 2007 03:39:40 +0000 (03:39 +0000)]
implemented support for more than 32768 clipnodes (again a case of
arguire qbsp producing files that violate the q1bsp format), this fixes
large monsters falling out of levels in warpspasm
havoc [Mon, 1 Oct 2007 03:37:39 +0000 (03:37 +0000)]
r_showtris/r_shownormals/r_showcollisionbrushes are no longer obscured
by bmodels and things that are drawn later, they now get their own
rendering stage, and have been moved after transparencies, also changed
them to use alpha blend, where their value controls the opacity
havoc [Mon, 1 Oct 2007 03:12:19 +0000 (03:12 +0000)]
added support for arguire's strange protocols that expand
modelindex/soundindex to 16bit (sometimes), these protocols are
not recommended for mods as the more standard QUAKEDP protocol already
supported 16bit indices by use of additional svc_ codes and additional
entity update bits, however these protocols are used in the warpspasm
demos, so this makes them play
implemented pvs support in water reflection rendering, greatly improving
performance with r_glsl_water 1
implemented some checks to shut off r_glsl_water if texture creation
fails
fix a bug where map becomes invisible (just sky) when the nearclip plane
culls a portal, this bug was introduced by recent water shader rendering
features (using an extra clip plane for culling, accidentally activated
the view's nearclip plane as well, which culls portals accidentally)
changed q1bsp loader to allow more than 32768 nodes, as long as the
total of nodes+leafs is <= 65536, it also attempts to fix corrupt BSP
trees by changing invalid references to instead use the solid leaf (so
you can't walk into a corrupt area), this was done to allow loading of
maps compiled with arguire's qbsp utility that can produce corrupt bsp
files