Bill Currie
0ea713eda4
redo the progs loader to allocate all the memory needed for progs in one
...
shot, allowing for caller specified alloc and edicts and zone memory sizes.
(progs + edicts + zone).
2002-01-29 20:53:44 +00:00
Bill Currie
6f29bcb238
break the loop from CRC_Block into CRC_ProcessBlock so that crcs can be
...
caclulated over multiple blocks.
2002-01-28 18:00:48 +00:00
Bill Currie
21b6e68a8c
break out the non-edict code into sensible locations
2002-01-28 17:15:36 +00:00
Bill Currie
750100b3e3
obsolete declaration cleanup and const correctness for Key_GetBinding
2002-01-25 00:01:05 +00:00
Bill Currie
85588c8fcb
start implementing the api for input lines and clean up a couple csqc
...
prototype issues.
2002-01-23 22:37:44 +00:00
Bill Currie
68637eea9e
start implementing dynamic memory for progs
2002-01-23 22:35:48 +00:00
Bill Currie
ad8b5670e2
prototype Z_ClearZone
2002-01-23 22:34:46 +00:00
Bill Currie
00b1ea4340
remove obsolete function
2002-01-23 22:34:08 +00:00
Bill Currie
52aa1c311b
qfcc now supports typedef
2002-01-23 21:16:43 +00:00
Bill Currie
3f958ae29b
more make dist fixes
2002-01-22 18:04:03 +00:00
Bill Currie
d936d5d1d5
fix a missing ;
2002-01-22 03:05:48 +00:00
Bill Currie
3ae15803fa
protect against gcc 2.94.4's stdbool.h
2002-01-21 20:00:38 +00:00
Bill Currie
20eec42a93
allow keys.h to be used in QC
2002-01-21 19:10:01 +00:00
Bill Currie
5b0e6dc342
add file and string modules to csqc. the file nodule is rather parnoid
...
about the path it's handed (need to get even more paranoid, though). the
string module just has char replacement so far. Add Draw_CenterPic to
r_progs.c, but this will only last till qpic_t is supported in qc.
the load menu almost works: just need to add key handling and fix a bug in
PF_sprintf
2002-01-21 07:24:51 +00:00
Bill Currie
e8f6fced0b
call BI_Init in the clients
2002-01-20 04:10:36 +00:00
Bill Currie
1168f1aa86
libQFcsqc (I'm not adverse to renaming it) is born. so far, only provides
...
Cbuf builtins.
2002-01-20 04:09:36 +00:00
Bill Currie
14ac3acc17
add a builtin (gametype) for detecting the, well, game type (ie, netquake
...
or quakeworld) which just returns the apprproate string. the single player
menu is now acessable in nq but not qw :)
2002-01-20 03:09:03 +00:00
Bill Currie
35de51ee31
the quit menu works now. however, quit from the console doesn't
2002-01-20 00:06:08 +00:00
Bill Currie
6767d6bfa0
win32 compile fixes
2002-01-19 20:45:45 +00:00
Bill Currie
6af9a5d8e6
make the builtins an array of pointers so the hash table doesn't get royally
...
screwed up
2002-01-19 03:31:51 +00:00
Bill Currie
fcc9cbf3b7
the main menu page now displays and can be entered/left. K_ESCAPE is now
...
handled exclusively by the console.
2002-01-18 23:45:28 +00:00
Bill Currie
10acad1ee4
first tie-in for the renderer (Draw_Pic: the interface will likely change
...
to better match the real interface, but this will do for now)
2002-01-18 22:35:46 +00:00
Bill Currie
ac71d101d2
menu code now gets initialized (menu_init in the progs).
2002-01-18 22:02:59 +00:00
Bill Currie
bb96a5b736
first use of client side QuakeC :) (and having more than one progs instance
...
seems to work, too). The menu code gets loaded, but is currently otherwise
unused as of yet.
2002-01-18 19:19:33 +00:00
Chris Ison
e3b2bfb81a
clear key states on game start
2002-01-17 22:04:58 +00:00
Bill Currie
c86c5a78bf
finally, the client console is merged
2002-01-16 21:53:42 +00:00
Seth Galbraith
778af4276e
external tga skin loading, doesn't work for players (teamcolor stuff)
2002-01-16 20:32:39 +00:00
Bill Currie
9dedd21158
start getting the shared console code working
2002-01-16 16:27:56 +00:00
Seth Galbraith
93116bc827
external mip texture loading
2002-01-16 01:02:50 +00:00
Chris Ison
6073ff8d58
added Draw_nString for displaying a non \0 terminated string
2002-01-09 21:20:22 +00:00
Bill Currie
96c7159f66
keep track of the times of the last event (for those events that report time)
...
and use that instead of CurrentTime in the X selection code (as recommended
by the ICCCM)
2002-01-08 20:07:19 +00:00
Bill Currie
72d6f34dc8
first step to using a saner internal represnetation for the high precietion
...
models.
2002-01-07 06:32:46 +00:00
Seth Galbraith
42456845f0
high precision software mdl rendering
2002-01-05 03:21:02 +00:00
Seth Galbraith
6ec47e6be6
slaying hardcoded mdl vertex and triangle limit
2002-01-04 07:40:00 +00:00
Ragnvald Maartmann-Moe IV
43ca999fd7
Minor bugfix.
2002-01-04 04:05:46 +00:00
Ragnvald Maartmann-Moe IV
b13efc3a83
Particle updates. Some cleanups, small speedups, and reimplement id's effects. r_particle_styles 0 to see id's effects.
2002-01-04 03:32:59 +00:00
Bill Currie
3c6f64b26b
_snprintf and _vsnprintf are not guaranteed to write the trailing '\0'
2002-01-03 23:24:47 +00:00
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
Bill Currie
9bc80e4a31
make dist and rpms work again
2002-01-02 16:21:02 +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
Ragnvald Maartmann-Moe IV
29a8d84806
cl_maxparticles to r_particles_max. annoying, but makes cl_ tab-completion less so.
2001-12-03 08:55:46 +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
8826bdd9dc
nuke the d_subdiv16 cvar as its sole user got nuked in the previous commit
2001-11-21 19:24:57 +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
Bill Currie
4c628d0c04
fbdev stuff is now warnings clean, so all -Werror for it
2001-11-20 03:40:57 +00:00
Bill Currie
cc66577f1c
fixes for building on alpha (linux)
2001-11-16 01:09:17 +00:00
Bill Currie
267e51eaaf
while cute, cl_surprise is just way too expensive when gains are measured in
...
fractions of a percent, and a loss is 3%.
I hate doing this sort of thing :(
2001-11-15 01:37:57 +00:00
Chris Ison
8d50c8ea47
added cl_surprise cvar for easter eggs
2001-11-14 21:46:50 +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
Adam Olsen
e0dfa2b453
- convert ALL the remaining svc's on the client. woot, hehe
2001-11-05 20:13:27 +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
Ragnvald Maartmann-Moe IV
3ad79cc970
Change particle limit from a short to an unsigned int. Possibly a tiny speedup, also allows for absurd particle counts...
2001-10-30 19:42:29 +00:00
Bill Currie
85c9e0ab1e
more externs cleaned up
2001-10-29 17:46:03 +00:00
Bill Currie
3ce8029f74
fix a silly goof with the models
2001-10-28 05:43:53 +00:00
Bill Currie
ccfe82cda4
*taniwha mops up the last drops of blood from extern
2001-10-28 04:38:24 +00:00
Bill Currie
78a3e398d5
* taniwha gets medieval on extern
2001-10-28 04:23:37 +00:00
Brian Koropoff
05f35f9cd4
This adds the ability to access special characters in console commands by proceeding certain characters with $. See libs/util/cmd.c for the conversion table. Preceeding a character by # will shift it up or down by 128, which basically is useful for accessing the brown letters and numbers. All special characters were removed from Team_ParseSay, and variable substitution now takes the form of ${var} to prevent conflicts with special character substitution. Special character access is controlled by cmd_highchars, which defaults to off.
2001-10-27 04:34:53 +00:00