Commit graph

274 commits

Author SHA1 Message Date
Bill Currie
9312681182 some more const correctness (in gl_sky_clip.c) and make the sky poly debug
drawing avialable via the gl_sky_debug cvar.
2002-01-03 18:18:45 +00:00
Bill Currie
013f503738 start getting const-correct on vec3_t params 2002-01-03 05:29:38 +00:00
Seth Galbraith
d570f0905f high precision model loading 2001-12-30 02:30:26 +00:00
Ragnvald Maartmann-Moe IV
94b1683862 Rest of previous commit. 2001-12-28 18:19:23 +00:00
Bill Currie
ee9ed0c395 minor cleanups 2001-12-21 21:52:03 +00:00
Ragnvald Maartmann-Moe IV
010ca032a5 Allow arbitrary power of 2 sizes for tga texture loads, reduce memory footprint needed to load rgb tgas. Speed load of non-RLE tgas.
Some slight code sanity improvements.
2001-12-21 01:41:19 +00:00
Ragnvald Maartmann-Moe IV
c764ddc64a Just a massive speedup to gl particles. Enjoy.
(Thanks to LordHavoc for prodding me to use glDrawElements, and munge all the particle textures into 1. Code mine, suggestions his)
2001-12-19 04:03:57 +00:00
Chris Ison
1c26723864 changed int to an unsigned int 2001-12-17 23:41:58 +00:00
Bill Currie
3dafbebf10 fix up #0 builtin functions at runtime. not done automaticly (need to call
PR_RelocateBuiltins) and fix a bug with profiling and unlimited execution
counts
2001-12-14 08:15:04 +00:00
Bill Currie
9b4e21a914 minor prototype cleanups 2001-12-14 00:06:58 +00:00
Bill Currie
218554d60a move include/QF/string.h to include/qstring.h and include it automaticly if
needed in compat.h
2001-12-13 20:44:32 +00:00
Bill Currie
b3843f7f5b draw.h:
remove dead Draw_TransPic prototype
draw.c:
	really don't draw spaces in Draw_AltString
2001-12-13 19:13:22 +00:00
Ragnvald Maartmann-Moe IV
2db08923e8 MSG_(Read|Write)(Coord|Angle|CoordAngle)V. Cleanups, and preparation for use of vector ops in msg.c. 2001-12-12 21:56:09 +00:00
Bill Currie
8ddce20949 pr_*: add storep.p so pointers can be stored into entities
emit.c: convert & (address) to . in unary .
        rewrite emit_assign_expr
expr.c: remove debug code and make unary . less agressive on address calcs
        also convert & (address) to . for lvals
2001-12-12 20:35:58 +00:00
Bill Currie
f9149a0d6c finally get around to renaming type_name to pr_type_name 2001-12-12 17:15:09 +00:00
Ragnvald Maartmann-Moe IV
f66b7a93e5 Major particle interface cleanup, several bugfixes, and minor performance improvements. Oh, check out "/help easter_eggs" (gl-only, at the moment). 2001-12-11 22:37:30 +00:00
Ragnvald Maartmann-Moe IV
d4a8224d9b Change hudswap to use a callback, and instead of passing a swap variable to 10 functions, where only 2 use it, use a global variable. Make a few scr functions static inline, too. Got a totally unexpected ~0.45fps speedup. 2001-12-09 14:05:30 +00:00
Bill Currie
d344aea51f store.p so pointers can be moved around 2001-12-08 21:43:44 +00:00
Bill Currie
00b2a45ecd change the operator for "address" from "." to "&" so load.p can be implement.
this makes it so pointers in entities work.
2001-12-08 20:17:20 +00:00
Bill Currie
b03a1bee42 ok, structures seem to generate correct code now 2001-12-08 08:19:48 +00:00
Bill Currie
028f8a116d immidiate indexed pointer access and some whitespace + reorg 2001-12-07 20:07:38 +00:00
Bill Currie
f6ef79b7e3 cleanup skin's namespace polution 2001-12-04 20:13:12 +00:00
Bill Currie
c130d38c6c fix more bugs caused by the Hunk_TempAlloc changes and do some more jump
prediction fixes for msg_t and sizebuf_t
2001-12-03 22:11:21 +00:00
Bill Currie
650d682d2c fix some nasty security holes causes by oversized connection strings. slows
down overkill slightly :/
2001-12-03 21:06:57 +00:00
Bill Currie
4f2f686834 r_netgraph_alpha works again 2001-11-30 03:51:43 +00:00
Bill Currie
12a0a10d33 more alpha portability fixes 2001-11-29 19:35:25 +00:00
Bill Currie
f7c90759af clean out the non-renderer fields from entity_t. not yet a noticable gain
but more work needs to be done on the linking code in the client. However,
there /does/ seem to be a slight gain with possibly less variance.
2001-11-27 21:42:49 +00:00
Bill Currie
4689350283 fix qport 2001-11-27 04:50:41 +00:00
Bill Currie
e99b422628 extinguish gl_fires. it's semi-broken, generally nasty (code wise) and
kinda tacky. also results in a slight speed boost:)
2001-11-25 06:24:26 +00:00
Ragnvald Maartmann-Moe IV
087f7d8520 Header fixes for previous updates. 2001-11-24 08:43:20 +00:00
Bill Currie
bd0ac4a38a merge Mod_LoadSpriteFrame from gl and sw back into the common sprite loader
pulling the gl specific code (the loading of the texture into GL) into
a separate function (Mod_SpriteLoadTexture), which is just a stub in sw
2001-11-22 05:31:44 +00:00
Bill Currie
0be2a31f2e lots of code cleanup. Merge Mod_LoadAllSkins, merge the sw32 model loading
code into the sw model loading code, remove all refs to r_pixbytes from the
sw renderer (it was never anything but 1), kill libQFmodels_sw32, remove
all the 16 bit code from the 8 bit sw renderer.
2001-11-21 19:13:53 +00:00
Bill Currie
7d14013041 fix many, many bugs in the alias skin loading, transforming and rendering
code. This fixes blather's `melted models' (sw), the nq alt player model
skins (gl), the arbitrary limits on skins and skin groups in gl, and the
incorrect timing of group skins (animated) in gl.
2001-11-21 08:14:05 +00:00
Bill Currie
ec75b71711 don't bother with fullbright skins for models that are allways fullbright and
clean up a misplaced function prototype
2001-11-20 08:45:26 +00:00
Bill Currie
5dab7ccaf7 precalculate smoe model specific info (wether the whole model is fullbright,
if it should have shadows, whether it should be scaled/translated (gl eyes),
and the minimum lighting (player)). give a 1.9% speedup in null renderer.
2001-11-20 08:02:35 +00:00
Chris Ison
c72e2ef324 re-enable 8bit textures 2001-11-14 21:01:10 +00:00
Bill Currie
07b59d2f07 pr_comp.h:
o	add OP_JUMPB
	o	OP_JUMPB renumberd some opcodes, so up PROG_VERSION
pr_edict.c:
	o	make the version error reporting more informative
pr_exec.c:
	o	implement OP_JUMPB (goto *(ptr + index))
pr_opcode.c: (libs/gamecode/engine)
	o	add OP_JUMPB to the table
expr.h:
	o	ex_uinteger support
	o	some const correctness
	o	prototype new_label_expr
qfcc.h:
	o	uinteger ussport
	o	add pointers for op_jump and op_jumpb
	o	prototype PR_GetArray
emit.c:
	o	general uinteger support
	o	new reference/reloc type 3: absolute statement address
	o	jumpb support (binary goto)
expr.c:
	o	uinteger support
	o	break the label name creation out of new_label_expr into
		new_label_name
	o	some const correctness
pr_def.c:
	o	add PR_GetArray to allocate an array in global space
	o	factor out some code common to PR_GetDef and PR_GetArray that would
		otherwise be duplicated
pr_imm.c:
	o	some const correctness
	o	uinteger support
pr_lex.c:
	o	uinteger support
pr_opcode.c: (tools/qfcc/source)
	o	support jump and jumpb
switch.c:
	o	rewrite the binary search code to support ranges.
2001-11-13 08:58:54 +00:00
Bill Currie
d27cd9cc21 s/type_size/pr_type_size/
remove the redundant type_size from qfcc
2001-11-12 23:56:46 +00:00
Bill Currie
e4fd746f71 this adds some stats to hash tables and a command to get at them for commands
and aliases
2001-11-10 01:13:29 +00:00
Bill Currie
928d343295 pr_comp.h:
o	add ev_uniteger to the types enum
	o	add opcodes for ifbe, ifb, ifae, ifa, jump, lt.ui, gt.ui, le.ui, ge.ui
progs.h:
	o	add uinteger accessors
pr_exec.c:
	o	implement ifbe, ifb, ifae, ifa, jump, lt.ui, gt.ui, le.ui, ge.ui
pr_opcode.c:
	o	add opcodes for ifbe, ifb, ifae, ifa, jump, lt.ui, gt.ui, le.ui, ge.ui
expr.h:
	o	prototype inc_users
qfcc.h:
	o	add externs for op_ifbe, op_ifb, op_ifae and op_ifa
emit.c:
	o	don't bother emiting an assignment to a temp def that's only used once
		(ie, it's never read, only written to)
	o	support the new if* instructions
expr.c:
	o	support the new if* insructions
	o	dectect expression loops in append_expr
	o	support unsigned integers
	o	re-work temp def usage counting
pr_def.c
	o	debugging for temp def usage counts
pr_opcode.c:
	o	support the new if* instructions
qc-parse.y:
	o	provide defines for IFBE IFB IFAE IFA
switch.c:
	o	do binary searches for strings, floats and ints if there are more than
		8 cases in a switch. Strings need more testing.
2001-11-09 00:58:16 +00:00
Brian Koropoff
ccd665e80c This commit removes maplist.c and replaces it with filelist.c, which
contains general functions for creating lists of a type of file and
provides the commands maplist, skinlist, skyboxlist, and demolist.
2001-11-06 07:14:29 +00:00
Bill Currie
15b381909e move maplist from quakefs.c to console/maplist.c. Unfortunatly, until the
client console plugin is usable, this means the clients link maplist.o
directly.
2001-11-05 22:24:16 +00:00
Bill Currie
b286afc7f7 don't install skin_stencil.h 2001-11-05 16:22:03 +00:00
Brian Koropoff
008b59b777 The beginnings of an f_* reply system have been added. f_version works
like normal, f_skins reports the average percent fullbright for all loaded
skins, and f_skins skinname reports the fullbright percent for a signle
skin.  cl_freply controls the time in seconds before another query can be
made.  Set it to 0 to disable them.  More queries will be added later.
The table for accessing special characters from the console has been
tweaked a bit.  Expect it to get tweaked more in the future.
2001-11-05 07:23:51 +00:00
Bill Currie
dc779acdb5 build the texture chains such that they get rendered front to back. seems to
only get about 0.17% speedup in overkill (with just about every thing off),
but it might make more of a difference in-game.
2001-11-05 06:20:35 +00:00
Bill Currie
dcd9b0040e rewrite the info strings to use hash tables instead of a static string.
This required changes to the api (info_t instead of char *) but should be
a net gain in speed (not a lot, admittedly: it was pretty fast to begin
with, but this paves the way for some other changes I have in mind).
2001-11-04 07:50:39 +00:00
Bill Currie
9209138fac nuke the max message lengths from qdefs.h 2001-11-03 00:27:01 +00:00
Bill Currie
5bf5278c2b pr_comp.h:
- new opcodes for pointers
progs.h:
	- prototype PR_Check_Opcodes
pr_edict.c:
	- move the static bounds checking to PR_Check_Opcodes in pr_opcode.c
pr_exec.c:
	- vector instruction cleanup
	- temporarily nuke bounds checking from storep.*
	- move base of address results from pr->edicts to pr->pr_globals
	- implement new pointer related instructions
	- nuke proposed global pointer instructions (not flexible enough)
pr_opcode.c:
	- add new pointer instuctions
	- re-implement static bounds/invalid opcode checking. no more multiple
	  case statements to keep track of.
2001-11-02 22:41:11 +00:00
Ragnvald Maartmann-Moe IV
7ea1051b9a Code cleanups. 2001-10-30 19:55:34 +00:00
Bill Currie
85c9e0ab1e more externs cleaned up 2001-10-29 17:46:03 +00:00