Bill Currie
4707706f5d
Use QF_NEED for the renderer and model libraries.
...
This breaks RPM building, but I can fix that later.
2012-02-10 13:29:45 +09:00
Bill Currie
e34f0178b6
Build GLSL clients for SDL.
...
Just about to do a release, and I realized windows users wouldn't have any
way of checking out the new renderer. I'll add wglsl when I get a chance to
do some testing.
2012-02-08 22:05:58 +09:00
Bill Currie
b59ffd4cf1
Fix win32 (mingw) builds.
2012-02-07 20:18:23 +09:00
Bill Currie
9fbff2f4d5
Do an audit of the Makefile.am files.
...
o All instances of LIBADD/LDADD have a corresponding DEPENDENCIES
specificatiion.
o libraries now use a lib_ldflags macro to keep things consistent
o duplication of source/lib names has been minimized (particularly in
the libraries; more work needs to be done for the executables)
o automake spec blocks have been organized (again, more work needs to be
done for the executables)
2012-02-07 16:04:19 +09:00
Bill Currie
a694eed968
Add Draw_Picf to allow smooth placement on low-res consoles.
2012-02-06 19:32:30 +09:00
Bill Currie
14c0e22494
Tweak Draw_MakePic to be a little more usable.
2012-02-06 15:50:32 +09:00
Bill Currie
42b87ee80c
Fix the memory leak in rua Draw_CachePic.
2012-02-06 12:49:57 +09:00
Bill Currie
6f10f0cea6
Fix the x86 sw renderer (intel asm).
...
I'd forgotten about assembly code versions when I was doing my testing
when I redid skins. Thanks to Sander for pointing it out.
2012-02-02 17:32:27 +09:00
Sander van Dijk
49453b690f
glsl_main.c: initialize t[] to silence compiler warning.
2012-02-02 16:55:33 +09:00
Sander van Dijk
82adc67a67
glsl_bsp.c: __builtin_expect() to avoid compiler warnings.
2012-02-02 16:55:25 +09:00
Bill Currie
f800e79a38
Make the init process more dependency based.
...
Most subsystems that depend on other subsystems now call the init functions
themselves. This makes for much cleaner client initialization (more work
needs to be done for the server).
2012-02-01 21:52:47 +09:00
Bill Currie
b9bb7d95bb
Remove calls to Sbar_Changed from the libraries.
...
If this breaks things, we'll have to sort something out, but again, no libs
reaching into the exe.
2012-02-01 20:06:14 +09:00
Bill Currie
5efc78b920
Move the call to R_Particles_Init_Cvars into R_Init_Cvars.
2012-02-01 20:05:11 +09:00
Bill Currie
4b390909f2
Move r_gravity to it's rightful home.
...
r_part.c makes much more sense.
2012-02-01 20:03:16 +09:00
Bill Currie
fa0ff96533
Clean up the mess with host_basepal and vid_colormap.
...
Libs should not be reaching into the exe :P
2012-02-01 19:52:13 +09:00
Bill Currie
d76e4608ab
Rewrite the ruamoko draw api internals.
...
Update for using resources, and add wrappers for Draw_MakePic and
Draw_DestroyPic/Draw_UncachePic.
2012-02-01 18:19:54 +09:00
Bill Currie
bc2aca53c3
Add functions to create/destroy qpics.
...
The creation uses raw 8-bit data (and the system palette). Destroying a
qpic loaded via other means will probably produce nasal demons.
2012-02-01 17:46:15 +09:00
Bill Currie
2b6adaa2d4
Do some more const correctness.
2012-02-01 17:44:55 +09:00
Bill Currie
7e406c20e5
Allow uncaching of qpics.
...
qpics loaded via Draw_CachePic can now be uncached via Draw_UncachePic.
2012-02-01 16:55:35 +09:00
Bill Currie
a849cf7698
Fix a stale include problem.
...
Thanks to iku for pointing it out.
2012-02-01 14:13:00 +09:00
Bill Currie
a131a7ab9d
Fix the gl test... again :/
...
Actually, it probably doesn't make any difference, but making it look
right is still important.
2012-02-01 13:01:24 +09:00
Bill Currie
706f09b247
Put the transparent surfaces on the water chain.
...
I'd actually done this the first time, but then got confused and forgot the
waterchain works with multiple textures. This is actually the right place
as all transparent surfaces need to be sorted irrespective to their
textures. Really, waterchain needs to be renamed.
2012-01-31 18:08:06 +09:00
Bill Currie
b286a35281
Sort transparent surfaces back to front.
...
This allows overlapping transparent surfaces to look like they are
overlapping each other rather than only the nearest one showing.
2012-01-31 16:17:09 +09:00
Bill Currie
c3d2365bd8
Fix a missed default_color init.
...
Wish I'd caught this earlier :/
2012-01-30 21:02:13 +09:00
Bill Currie
c01255a387
Fix a case&paste error.
...
Doesn't fix the color problem for water surfaces on my eeepc, though :(
2012-01-30 20:31:58 +09:00
Bill Currie
8f0ce733ff
Sanitize color handling a little.
2012-01-30 20:31:37 +09:00
Bill Currie
4b948de225
Ensure the lightmap gets rebuilt when the dlights disappear.
...
I didn't realize what that line was for when I copied the code from GL :/
2012-01-30 18:41:27 +09:00
Bill Currie
e4f63fba6c
Fix some integer shift overflows.
...
Thanks to Ozkan Sezer for pointing them out.
2012-01-30 09:13:06 +09:00
Bill Currie
f8dfee6de7
Merge branch 'master' into glsl
2012-01-29 22:36:35 +09:00
Bill Currie
497718cc40
Plug the memory/texture/vbo leaks.
...
QF still leaks about 3MB/run on demo1, but even 100 runs didn't show any
render issues.
2012-01-29 22:32:35 +09:00
Bill Currie
b03e937b67
Implement brush entity alpha.
...
http://www.celephais.net/board/view_thread.php?id=60157& has a good map for
testing (you see an example straight away if you look up). (+set max_edicts
2048)
2012-01-29 16:56:50 +09:00
Bill Currie
8f869c001b
Fix the missing world on map reload.
...
If the map got reloaded but the current leaf didn't change the world (and
most entities) didn't get drawn. Forcing a vis update by first setting
r_viewleaf to null and marking surfaces does the trick :)
2012-01-29 16:09:35 +09:00
Bill Currie
462a9047c6
Fix the missing fog on particles and sprites.
...
Bah, definitely need a metter method of parameter interrogation.
2012-01-29 10:35:23 +09:00
Bill Currie
731236ee07
Implement global fog.
...
Sprites and particles don't seem to be getting fogged correctly, but bsp
and alias models are working.
2012-01-29 10:27:28 +09:00
Bill Currie
4734c5b64a
Implement water alpha.
2012-01-28 21:20:34 +09:00
Bill Currie
7e078c7f9c
Revamp cshifts and implement in glsl.
...
The renderer should now be free of any direct access to client code. Even
3d rendering is now done via a function pointer.
The cshift code is done as a 2d screen function.
2012-01-28 20:45:14 +09:00
Bill Currie
315db554b5
Add some instrumentation to check render speeds.
2012-01-28 14:10:47 +09:00
Bill Currie
2595251162
Do not update every visible lightmap every frame.
...
This takes nq from ~25fps to 65-72 fps on Unforgiven's start map.
2012-01-27 21:48:25 +09:00
Bill Currie
df87cffe15
Start working on the new GL skin code.
2012-01-24 23:06:07 +09:00
Bill Currie
6104db50e1
Fix a gl matrix stack overflow.
...
I'd missed a couple of places for glPopMatrix (worse, one was push!).
2012-01-24 12:10:37 +09:00
Bill Currie
1ef24e0404
Fix a gl matrix stack overflow.
...
I'd missed a couple of places for glPopMatrix (worse, one was push!).
2012-01-24 12:08:12 +09:00
Bill Currie
08990ebb5a
Make top/bottom color work for GLSL.
...
Works quite nicely (love those colormaps).
2012-01-23 19:24:12 +09:00
Bill Currie
7bfddd7ffe
Gut most of the old skin code.
...
Custom skins are smashed on most targets. Player colors don't work, etc.
However, this will let me do a much cleaner implementation.
2012-01-23 16:16:30 +09:00
Bill Currie
61c127abc0
Make a start on skin support.
...
I had this lying around for a while since it was more important to get
other things working first.
2012-01-22 15:49:01 +09:00
Bill Currie
76cb60461d
Tweak the size of point particles.
...
This looks fairly reasonable, but should probably be tweaked further to
base the point size on resolution.
2012-01-21 22:05:24 +09:00
Bill Currie
5080a6f37e
Enable the point size shader variable.
...
This is a rather "evil" hack because GLES doesn't seem to need
GL_VERTEX_PROGRAM_POINT_SIZE, but GL does, and all my work is currently
done in GL rather than GLES. Point particles now work, but the sizes are
all wrong.
2012-01-21 21:54:36 +09:00
Bill Currie
68d956583d
Draw ALL of the particles, not just 2/3 of them.
...
Using quads requires 4 elements, but triangles require 6. I'd gotten the
element array setup right, but I'd forgotten to tweak vacount when drawing
the particles.
2012-01-21 20:16:18 +09:00
Bill Currie
8345f07db2
Implement QF style particles.
...
Actually looks pretty good against the sw style world.
2012-01-21 19:51:18 +09:00
Bill Currie
4955caafe5
Make the dynamic textures more readily available.
...
I want to get QF style particles going in glsl (since id style is currently
stuck at one pixel), but I don't want multiple copies of the texture code.
2012-01-21 19:13:01 +09:00
Bill Currie
358bbc4439
Disable the sky spin effect.
...
It's cool, but not appropriate as a default. All that's needed is a way to
set (and optionally update) sky_velocity (map vars? qc?).
2012-01-21 17:18:29 +09:00