]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - render.h
cleaned up and fixed collisions with brush models (example: you can now ramp jump...
[xonotic/darkplaces.git] / render.h
index 0053ca0b280eb52efdf545cc2af983e57a22fae6..76777d16c6a1a7acba822cc0c4503c6c2795f97f 100644 (file)
--- a/render.h
+++ b/render.h
@@ -36,9 +36,7 @@ extern cvar_t r_skyquality;
 // these are exposed because surface rendering uses them
 extern rtexture_t *solidskytexture;
 extern rtexture_t *alphaskytexture;
-extern rtexture_t *mergeskytexture;
 extern int skyrendernow, skyrendermasked, skyrenderglquake;
-extern cvar_t r_mergesky;
 extern void R_SkyStartFrame(void);
 extern void R_Sky(void);
 
@@ -50,8 +48,7 @@ extern void SHOWLMP_clear(void);
 
 // render profiling stuff
 extern qboolean intimerefresh;
-extern cvar_t r_speeds2;
-extern char r_speeds2_string[1024];
+extern char r_speeds_string[1024];
 
 // lighting stuff
 extern vec3_t lightspot;
@@ -75,28 +72,6 @@ extern cvar_t r_novis;
 
 //=============================================================================
 
-typedef struct
-{
-       // area to render in
-       int             x, y, width, height;
-       float   fov_x, fov_y;
-
-       // view point
-       vec3_t  vieworg;
-       vec3_t  viewangles;
-
-       int numdecals;
-       renderdecal_t *decals;
-
-       // LordHavoc: this will be enabled at some point, taking the place of cl_visedicts
-       int numentities;
-       entity_render_t *entities;
-
-       int numparticles;
-       struct renderparticle_s *particles;
-}
-refdef_t;
-
 //extern       qboolean        r_cache_thrash;         // compatability
 extern entity_render_t *currentrenderentity;
 extern int                     r_framecount;
@@ -112,12 +87,6 @@ extern      vec3_t  vpn;
 extern vec3_t  vright;
 extern vec3_t  r_origin;
 
-//
-// screen size info
-//
-extern refdef_t        r_refdef;
-
-
 extern mleaf_t         *r_viewleaf, *r_oldviewleaf;
 extern unsigned short  d_lightstylevalue[256]; // 8.8 fraction of base light value
 
@@ -137,20 +106,17 @@ void R_Init (void);
 void R_RenderView (void); // must set r_refdef first
 
 
-void R_InitSky (byte *src, int bytesperpixel); // called at level load
+void R_InitSky (qbyte *src, int bytesperpixel); // called at level load
 
 //int R_VisibleCullBox (vec3_t mins, vec3_t maxs);
 
 void R_NewMap (void);
 
-void R_Decals_Init(void);
-void R_DrawDecals(void);
-
 void R_DrawWorld(void);
 void R_SetupForWorldRendering(void);
 void R_MarkWorldLights(void);
 void R_PrepareSurfaces(void);
-void R_DrawSurfacesAll(void);
+void R_DrawSurfaces(int type);
 void R_DrawPortals(void);
 void R_DrawParticles(void);
 void R_DrawExplosions(void);
@@ -174,11 +140,11 @@ extern vec3_t fogcolor;
 extern vec_t fogdensity;
 //#define calcfog(v) (exp(-(fogdensity*fogdensity*(((v)[0] - r_origin[0]) * vpn[0] + ((v)[1] - r_origin[1]) * vpn[1] + ((v)[2] - r_origin[2]) * vpn[2])*(((v)[0] - r_origin[0]) * vpn[0] + ((v)[1] - r_origin[1]) * vpn[1] + ((v)[2] - r_origin[2]) * vpn[2]))))
 #define calcfog(v) (exp(-(fogdensity*fogdensity*(((v)[0] - r_origin[0])*((v)[0] - r_origin[0])+((v)[1] - r_origin[1])*((v)[1] - r_origin[1])+((v)[2] - r_origin[2])*((v)[2] - r_origin[2])))))
-#define calcfogbyte(v) ((byte) (bound(0, ((int) ((float) (calcfog((v)) * 255.0f))), 255)))
+#define calcfogbyte(v) ((qbyte) (bound(0, ((int) ((float) (calcfog((v)) * 255.0f))), 255)))
 
 #include "r_modules.h"
 
-extern qboolean lighthalf;
+extern float overbrightscale;
 
 #include "r_lerpanim.h"
 
@@ -217,3 +183,10 @@ particletexture_t;
 #define MAX_PARTICLETEXTURES 64
 // [0] is normal, [1] is fog, they may be the same
 extern particletexture_t particletexture[MAX_PARTICLETEXTURES][2];
+
+void R_TimeReport(char *name);
+void R_TimeReport_Start(void);
+void R_TimeReport_End(void);
+
+// r_stain
+void R_Stain (vec3_t origin, float radius, int cr1, int cg1, int cb1, int ca1, int cr2, int cg2, int cb2, int ca2);