extern mplane_t frustum[4];
extern int c_alias_polys, c_light_polys, c_faces, c_nodes, c_leafs, c_models, c_bmodels, c_sprites, c_particles, c_dlights;
+// forces all rendering to draw triangle outlines
+extern cvar_t r_showtris;
+extern int r_showtrispass;
//
// view origin
//
-extern vec3_t r_vieworigin;
-extern vec3_t r_viewforward;
-extern vec3_t r_viewleft;
-extern vec3_t r_viewright;
-extern vec3_t r_viewup;
+extern vec3_t r_vieworigin;
+extern vec3_t r_viewforward;
+extern vec3_t r_viewleft;
+extern vec3_t r_viewright;
+extern vec3_t r_viewup;
+extern int r_view_x;
+extern int r_view_y;
+extern int r_view_width;
+extern int r_view_height;
+extern float r_view_fov_x;
+extern float r_view_fov_y;
+extern matrix4x4_t r_view_matrix;
extern mleaf_t *r_viewleaf, *r_oldviewleaf;
extern unsigned short d_lightstylevalue[256]; // 8.8 fraction of base light value
//#define PARANOID 1
int R_CullBox(const vec3_t mins, const vec3_t maxs);
+#define VIS_CullBox(mins,maxs) (R_CullBox((mins), (maxs)) || (cl.worldmodel && cl.worldmodel->brush.BoxTouchingPVS && !cl.worldmodel->brush.BoxTouchingPVS(cl.worldmodel, r_pvsbits, (mins), (maxs))))
extern qboolean fogenabled;
extern vec3_t fogcolor;