Commit graph

10 commits

Author SHA1 Message Date
Bill Currie
0c437492b4 [renderer] Move to using dynamic frame buffers
For now, OpenGL and Vulkan renderers are broken as I focused on getting
the software renderer working (which was quite tricky to get right).

This fixes a couple of issues: the segfault when warping the screen (due
to the scene rendering move invalidating the warp buffer), and warp
always having 320x200 resolution. There's still the problem of the
effect being too subtle at high resolution, but that's just a matter of
updating the tables and tweaking the code in D_WarpScreen.

Another issue is the Draw functions should probably write directly to
the main frame buffer or even one passed in as a parameter. This would
remove the need for binding the main buffer at the beginning and end of
the frame.
2022-03-24 12:56:29 +09:00
Bill Currie
8ee776e8fb [sw] Rename d_pzbuffer to d_zbuffer 2022-03-21 23:12:22 +09:00
Bill Currie
5477352e93 [renderer] Abandon sw32 altogether
I'd been considering it for a while, but in the end, all the issues it
presented made me decide it wasn't worth merging and was never really
worth keeping: it was a neat proof of concept but of little actual use,
especially now everyone either has an OK GPU or would want to stick to
8-bit rendering anyway (sorry L-Havoc).

However, both it and my merge work are preserved in git history :)
2022-03-09 21:36:15 +09:00
Bill Currie
6377734e32 [renderer] Merge the two software renderers
I got tired of having to maintain two separate software renderers, but
didn't want to just nuke sw32, so its core changes are merged into sw.

Alias model rendering is broken, but I know exactly what's wrong and how
to fix it, just need to take care due to asm.
2022-03-09 15:56:19 +09:00
Ionen Wolkens
881add2c51
Add GNU-stack notes to assembly files
Prevents GCC from assuming an executable stack is needed.

Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
2021-06-13 10:12:03 -04:00
Bill Currie
8e30d3098e Fix asm ilnking in mingw.
It seems that recent binutils/libtool doesn't like exporting symbols that
don't begin with a _.
2011-09-10 17:49:14 +09:00
Bill Currie
dc5846948e re-enable asm for static builds 2001-06-11 20:59:48 +00:00
Bill Currie
323015b11a include/QF header cleanup. including config.h (or any file from include) is
a nono because headers in include/QF get installed, but include don't and thus
would break quakeforge-dev.
2001-05-31 05:33:13 +00:00
Bill Currie
1038f88a64 disable asm in the software renderer for now. This will allow me to fix the
files one at a time and allow others to use software independent of asm usage
(even if a little slowly (~14% slower on my dual c450)).
2001-05-25 14:57:31 +00:00
Bill Currie
73e6e1684f FINALLY, the nq and qw renderers are merged. the view and particle subsystems
are not yet merged due to their dependence on the client, but that will come
soon.
2001-05-24 19:22:35 +00:00
Renamed from nq/source/d_draw.S (Browse further)