Bill Currie
7d653f3676
Start work on outputting text.
...
The shaders now compile. No linking is done yet. Char quads are generated,
but not sent to the card.
2011-12-25 19:42:39 +09:00
Bill Currie
70abd33a25
Add GL 2.0 stuff.
2011-12-25 19:40:04 +09:00
Bill Currie
91afdcf064
Don't call init_box when not doing a box trace.
...
I took the opportunity to pass qf through callgrind. init_box was
surprisingly expensive, especially considering its results were never used.
2011-12-25 17:11:48 +09:00
Bill Currie
55a0ed49cd
Build qw-client-glslx too.
...
I was asked about timedemo overkill (bigass1 currently gets 40kfps, haha),
so I had to add qw-client-glslx to the build.
2011-12-25 16:41:14 +09:00
Bill Currie
9df7370bcd
Create some shaders for quake text.
...
Still nothing drawn, but this gets my shader scripts into C without me
having to look at ugly strings.
2011-12-25 15:53:12 +09:00
Bill Currie
b7c90fa02d
Load the quake palete as a texture.
...
256x1 rgba.
2011-12-25 13:53:52 +09:00
Bill Currie
99c490ce52
Get glsl running as a null renderer.
...
This means that nq-glslx can get through demo1, demo2, demo3 and bigass1
without crashing. However, nothing is rendered, so unless you like black,
it's not very interesting.
2011-12-25 13:02:26 +09:00
Bill Currie
2894689f71
Clean up mod_lightmap_bytes.
...
Just how many definitions do we need?
2011-12-25 13:02:26 +09:00
Bill Currie
dcf2b14188
Implement alias model skin loading for glsl.
2011-12-25 13:02:26 +09:00
Bill Currie
a7ad6c03f5
Add some defines and functions I need for glsl.
...
There will be more coming as I need them.
2011-12-25 11:24:57 +09:00
Bill Currie
e62eb23f67
And do the real merge.
...
That drastically simplifies the processes of alias model loading for glsl :)
2011-12-25 11:04:03 +09:00
Bill Currie
c0d37ddc1e
Pseudo merge gl and sw Mod_LoadAliasGroup.
...
Interestingly, this didn't break gl alias model renderering (but then, it
does weird things to the data anyway).
2011-12-25 10:53:53 +09:00
Bill Currie
1f8db5fe3a
Pseudo merge gl and sw Mod_LoadAliasFrame.
2011-12-25 10:34:29 +09:00
Bill Currie
ce8c2e717a
Add some more vector/quat component macros.
2011-12-24 20:10:37 +09:00
Bill Currie
cc5140e3a1
Move min/max/bound and field_offset into better locations.
...
min/max bound into mathlib.h (they /are/ math functions, after all) and
field_offset into qtypes.h.
2011-12-24 10:04:33 +09:00
Bill Currie
59ef1eae9d
Split out the floodfile code into its own file.
2011-12-23 19:01:31 +09:00
Bill Currie
6fe9557dae
Put in the final pieces so nq-glslx can link.
...
Everything is still stubs. Trying to run nq-glslx results in a segfault :)
2011-12-23 12:52:55 +09:00
Bill Currie
53d89bf85a
Clean up the mess around D_FlushCaches.
...
Create an R_ClearState and call that from the clients. It calls any
necessary functions itself.
2011-12-23 12:51:47 +09:00
Bill Currie
33c5320c0e
Create stubs for most of the required render functions.
...
nq-glslx almost links. Just some suspicious references in host.c I want to
check before doing anything more.
2011-12-23 12:19:50 +09:00
Bill Currie
497461b4c2
Make a start on making a pure GLSL renderer.
...
For now, only nq-glslx will be built, but as there is no actual code, it
doesn't link. However, this gets the glsl stuff into the build system.
2011-12-23 12:19:13 +09:00
Bill Currie
890963423b
Big cleanup of Host_Init.
...
Eventually, all init functions will chain to their dependencies.
2011-12-22 16:54:22 +09:00
Bill Currie
0086fee233
Rename host_skin.c to cl_skin.c.
...
I don't know why I thost host was a good idea.
2011-12-22 16:54:22 +09:00
Bill Currie
29306f7799
Merge nq and qw sv_phys.c
...
sv_move and world are now identical between the two directories.
2011-12-22 16:54:22 +09:00
Bill Currie
2bec1ae1d9
Make qw's push/block handing the same as nq's.
...
NQ's handling seems to be more correct. The only likely problems are if
something is pushed into (eg) a button, and things will be a little slower.
2011-12-22 16:54:22 +09:00
Bill Currie
3eb788b3f6
Make qw's SV_Push remove ONGROUND for non-players.
...
This seems to have been an optimization for QW since standard qw removed
monsters. However, since there are QW mods that brought back monsters,
this should be an improvement.
2011-12-22 16:54:22 +09:00
Bill Currie
d1be716031
Tidy up the corpse related code in SV_Push.
2011-12-22 16:54:22 +09:00
Bill Currie
4ade879674
Make SV_PushEntity easier to read.
2011-12-22 16:54:22 +09:00
Bill Currie
b54f0587d1
Bring qw's entity-in-solid check into nq's SV_Push.
2011-12-22 16:54:22 +09:00
Bill Currie
7243de0d90
Remove entorg from nq's SV_Push ().
...
It's been redundant since the moved_* arrays came in.
2011-12-22 16:54:22 +09:00
Bill Currie
64115d3331
Clean up sv_phys.c a little before merging.
...
Add some comments and make the code a little more readable so I know
what's going on.
2011-12-22 16:54:22 +09:00
Bill Currie
8b78aeb666
Add component-wise vector and quaternion comparison macros.
...
Also, re-implement VectorCompare and QuatCompare using the new macros.
VectorCompCompare and QuatCompCompare take a parameter specifying the
comparison operator to use. All component-wise comparisons must be true
for the whole comparison to be true.
2011-12-22 16:54:21 +09:00
Bill Currie
d441dc9027
Sort the cvar declarations.
...
The diff is still messy, but now it includes only new/old cvars, not moved
cvars.
2011-12-22 16:54:21 +09:00
Bill Currie
cba27bc745
Allow NQ's SV_RunThink to loop.
...
This brings NQ's physics a little closer to QW's. After studying both the
original WinQuake source and the progs source, this change should be
harmless, making very little difference. However, it does allow an
entity's think function to be called multiple times in the same frame (for
when the entity needs more time to think, but it would cause runaway loop
errors). Maybe need a "runaway think" check.
2011-12-22 16:54:21 +09:00
Bill Currie
c598ce4b50
Remove more of the fitzquake lerp code.
...
Missed this bit ealier.
2011-12-22 16:54:21 +09:00
Bill Currie
74ef056515
Update NEWS for 0.6.0.
2011-12-21 19:25:14 +09:00
Bill Currie
858d95de58
Add a bunch more keys to the X11 clients.
...
Now, QF does something reasonable for every key on my keyboar for which X
gives us a keycode.
2011-12-19 16:37:48 +09:00
Bill Currie
4115ef5dd3
And now, 0.5.99beta4.1
...
Just my luck: push the beta4 tag, and I find a patch in our patch tracker.
2011-12-19 09:48:33 +09:00
Bill Currie
87390f53b0
Z_Realloc() should zero-fill the expandded part of the mem
...
Patch from Ozkan Sezer (sezero). Thank you.
2011-12-19 09:45:46 +09:00
Bill Currie
0238791b49
Update for beta 4
2011-12-19 09:27:15 +09:00
Bill Currie
52d9269867
Merge brush model with world model rendering.
...
With this, non-mtex global fog now works properly :).
2011-12-18 08:09:55 +09:00
Bill Currie
a8e354536a
Implement the instance surface allocation/freeing.
...
Not actually used yet, so it's harmless at this stage.
2011-12-17 19:42:19 +09:00
Bill Currie
87b78e5533
Move the surface chain links out of the surfaces.
...
The links are now in "instance surfaces". For non-instanced models (world,
doors, plats etc (ie, world and its sub-models)), there will be one
instance surface per model surface. However, for instanced models (ammo
boxes etc), there will be many, dynamically allocated (not yet
implemented). This commit gets the static instance surfaces working.
2011-12-17 19:14:14 +09:00
Bill Currie
497e4b7dfd
Update NEWS for 0.5.99beta3.
2011-12-17 13:26:00 +09:00
Bill Currie
9f0bdf7794
Add some comments.
2011-12-17 09:39:57 +09:00
Bill Currie
933120d44f
Fake vertex arrays for text and particles.
...
Getting gl_vaelements_max -1 to work produced a rather nasty surprise :P
2011-12-16 20:09:05 +09:00
Bill Currie
5cd1f6f5cf
Fix a GL version check snafu.
...
Thanks to MH (on inside3d.com) for pointing this out to me.
2011-12-16 09:43:22 +09:00
Bill Currie
e67690a1a9
Restore the missing lightmaps in non-mtex mode.
...
I forgot to blend in the lightmaps in the fogless non-mtex path.
2011-12-16 09:21:39 +09:00
Bill Currie
b2aa5ce554
Register the textures of other brush models;
2011-12-15 17:09:02 +09:00
Bill Currie
962451e2fe
Create a list of texture chains.
...
This moves the texture chains out of the world model and into a separate
list, allowing other brush models to registter their textures.
2011-12-15 17:09:02 +09:00
Bill Currie
d6a668d517
Split out chain_surface() from visit_node().
2011-12-15 17:09:02 +09:00