-void R_TimeRefresh_f (void);
-void R_ReadPointFile_f (void);
-
-typedef struct surfcache_s
-{
- struct surfcache_s *next;
- struct surfcache_s **owner; // NULL is an empty chunk of memory
- int lightadj[MAXLIGHTMAPS]; // checked for strobe flush
- int dlight;
- int size; // including header
- unsigned width;
- unsigned height; // DEBUG only needed for debug
- float mipscale;
- struct texture_s *texture; // checked for animating textures
- byte data[4]; // width*height elements
-} surfcache_t;
-
-
-typedef struct
-{
- pixel_t *surfdat; // destination for generated surface
- msurface_t *surf; // description for surface to generate
- fixed8_t lightadj[MAXLIGHTMAPS];
- // adjust for lightmap levels for dynamic lighting
- texture_t *texture; // corrected for animating textures
- int surfmip; // mipmapped ratio of surface texels / world pixels
- int surfwidth; // in mipmapped texels
- int surfheight; // in mipmapped texels
-} drawsurf_t;
-
-// LordHavoc: added dust, smoke, snow, bloodcloud, and many others
-typedef enum {
- pt_static, pt_grav, pt_slowgrav, pt_fire, pt_explode, pt_explode2, pt_blob, pt_blob2, pt_dust, pt_smoke, pt_snow, pt_bulletpuff, pt_bloodcloud, pt_fadespark, pt_fadespark2, pt_fallfadespark, pt_fallfadespark2, pt_bubble
-} ptype_t;
-
-// !!! if this is changed, it must be changed in d_ifacea.h too !!!
-typedef struct particle_s
-{
-// driver-usable fields
- vec3_t org;
- float color;
-// drivers never touch the following fields
- struct particle_s *next;
- vec3_t vel;
- float ramp;
- float die;
- ptype_t type;
- // LordHavoc: added for improved particle effects
- float scale;
- int texnum;
- float alpha; // 0-255
- float time2; // used for various things (snow fluttering, for example)
- vec3_t vel2; // used for snow fluttering (base velocity, wind for instance)
-} particle_t;
-