mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-01-31 21:20:33 +00:00
6377734e32
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.
46 lines
1 KiB
C
46 lines
1 KiB
C
#ifndef __vid_sw_h
|
|
#define __vid_sw_h
|
|
|
|
#include "QF/qtypes.h"
|
|
|
|
struct surf_s;
|
|
struct vrect_s;
|
|
struct particle_s;
|
|
struct spanpackage_s;
|
|
struct qpic_s;
|
|
struct espan_s;
|
|
struct sspan_s;
|
|
|
|
typedef struct sw_draw_s {
|
|
#define SW_DRAW_FUNC(name, rettype, params) \
|
|
rettype (*name) params;
|
|
#include "vid_sw_draw.h"
|
|
} sw_draw_t;
|
|
|
|
struct vrect_s;
|
|
typedef struct sw_ctx_s {
|
|
int pixbytes;
|
|
void (*choose_visual) (struct sw_ctx_s *ctx);
|
|
void (*create_context) (struct sw_ctx_s *ctx);
|
|
void (*set_palette) (struct sw_ctx_s *ctx, const byte *palette);
|
|
void (*update) (struct sw_ctx_s *ctx, struct vrect_s *rects);
|
|
sw_draw_t *draw;
|
|
} sw_ctx_t;
|
|
|
|
extern sw_ctx_t *sw_ctx;
|
|
|
|
#define SW_DRAW_FUNC(name, rettype, params) \
|
|
rettype name##_8 params;
|
|
#include "vid_sw_draw.h"
|
|
|
|
#define SW_DRAW_FUNC(name, rettype, params) \
|
|
rettype name##_16 params;
|
|
#include "vid_sw_draw.h"
|
|
|
|
#define SW_DRAW_FUNC(name, rettype, params) \
|
|
rettype name##_32 params;
|
|
#include "vid_sw_draw.h"
|
|
|
|
struct tex_s *sw_SCR_CaptureBGR (void);
|
|
|
|
#endif//__vid_sw_h
|