#pragma once

#define DF_DETAIL               1
#define DF_CAUSTIC              2
#define DF_SHINY                3
#define DF_RUSTY	            4

//materials
#define NOTSHINY				0
#define SHINYGLASS				1
#define SHINYGLASSCRACKED		2
#define SHINYGLASSCRACKED2		3
#define SHINYMETALL				4
#define SHINYMETALLRUSTED		5
#define SHINYMETALLRUSTED2		6
#define SHINYSTONE				7
#define SHINYSTONECRACKED		8
#define SHINYSTONECRACKED2		9
#define SHINYSTONECRACKED3		10


void R_DrawSequentialBumpmapPoly (msurface_t *s);
void R_DrawSequentialCausticPoly (msurface_t *s);
void R_DrawSequentialChromePoly (msurface_t *s);
void R_ExtraBumpPass (void);
void R_RecursiveBumpmapWorldNode (mnode_t *node, int type);
void R_ExtraBumpPassRecursive (void);
void EmitWaterPolysReflection (msurface_t *fa);