1 #ifndef AVP_OPENGL_H 2 #define AVP_OPENGL_H 3 4 #include "kshape.h" 5 6 7 #define OPENGL_VERTEX_ATTRIB_INDEX 0 8 #define OPENGL_TEXCOORD_ATTRIB_INDEX 1 9 #define OPENGL_COLOR0_ATTRIB_INDEX 2 10 #define OPENGL_COLOR1_ATTRIB_INDEX 3 11 12 #define OPENGL_VERTEX_ATTRIB_BITINDEX (1 << OPENGL_VERTEX_ATTRIB_INDEX) 13 #define OPENGL_TEXCOORD_ATTRIB_BITINDEX (1 << OPENGL_TEXCOORD_ATTRIB_INDEX) 14 #define OPENGL_COLOR0_ATTRIB_BITINDEX (1 << OPENGL_COLOR0_ATTRIB_INDEX) 15 #define OPENGL_COLOR1_ATTRIB_BITINDEX (1 << OPENGL_COLOR1_ATTRIB_INDEX) 16 17 enum AVP_SHADER_PROGRAM { 18 AVP_SHADER_PROGRAM_DEFAULT, 19 AVP_SHADER_PROGRAM_NO_SECONDARY, 20 AVP_SHADER_PROGRAM_NO_TEXTURE, 21 AVP_SHADER_PROGRAM_NO_DISCARD, 22 AVP_SHADER_PROGRAM_NO_SECONDARY_NO_DISCARD, 23 AVP_SHADER_PROGRAM_NO_COLOR_NO_DISCARD, 24 AVP_SHADER_PROGRAM_MAX 25 }; 26 27 void SelectProgram(enum AVP_SHADER_PROGRAM program); 28 void DrawFullscreenTexture(int texureObject); 29 30 void InitOpenGL(int firsttime); 31 void ThisFramesRenderingHasBegun(); 32 void ThisFramesRenderingHasFinished(); 33 void D3D_SkyPolygon_Output(POLYHEADER *inputPolyPtr, RENDERVERTEX *renderVerticesPtr); 34 void D3D_DrawBackdrop(); 35 void D3D_FadeDownScreen(int brightness, int colour); 36 void RenderString(char *stringPtr, int x, int y, int colour); 37 void RenderStringCentred(char *stringPtr, int centreX, int y, int colour); 38 void RenderStringVertically(char *stringPtr, int centreX, int bottomY, int colour); 39 void D3D_DecalSystem_Setup(); 40 void D3D_DecalSystem_End(); 41 void SecondFlushD3DZBuffer(); 42 void D3D_PlayerDamagedOverlay(int intensity); 43 void D3D_PredatorScreenInversionOverlay(); 44 void D3D_ScreenInversionOverlay(); 45 void D3D_DrawColourBar(int yTop, int yBottom, int rScale, int gScale, int bScale); 46 47 #endif 48