]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - gl_backend.h
changed brushq3 submodel firstsurface and firstbrush from pointers to integers
[xonotic/darkplaces.git] / gl_backend.h
index 343f66b53be5de64d60a96edc790abb655f9670e..9e30f274926129812760b2c3b2ef37965414f985 100644 (file)
@@ -2,7 +2,7 @@
 #ifndef GL_BACKEND_H
 #define GL_BACKEND_H
 
-#define MAX_TEXTUREUNITS 8
+#define MAX_TEXTUREUNITS 16
 
 #define POLYGONELEMENTS_MAXPOINTS 258
 extern int polygonelements[768];
@@ -26,13 +26,14 @@ void GL_Scissor(int x, int y, int width, int height); // AK for DRAWQUEUE_SETCLI
 void GL_ScissorTest(int state);        // AK for DRAWQUEUE_(RE)SETCLIP
 void GL_Clear(int mask);
 
+unsigned int GL_Backend_CompileProgram(int vertexstrings_count, const char **vertexstrings_list, int fragmentstrings_count, const char **fragmentstrings_list);
+void GL_Backend_FreeProgram(unsigned int prog);
+
 extern cvar_t gl_lockarrays;
 extern cvar_t gl_mesh_copyarrays;
 extern cvar_t gl_paranoid;
 extern cvar_t gl_printcheckerror;
 
-extern int c_meshelements, c_meshs;
-
 //input to R_Mesh_State
 typedef struct
 {
@@ -80,11 +81,13 @@ void R_Mesh_Draw(int numverts, int numtriangles, const int *elements);
 void R_Mesh_Draw_ShowTris(int numverts, int numtriangles, const int *elements);
 
 // saves a section of the rendered frame to a .tga or .jpg file
-qboolean SCR_ScreenShot(char *filename, int x, int y, int width, int height, qboolean jpeg);
+qboolean SCR_ScreenShot(char *filename, qbyte *buffer1, qbyte *buffer2, qbyte *buffer3, int x, int y, int width, int height, qboolean flipx, qboolean flipy, qboolean flipdiagonal, qboolean jpeg);
 // used by R_Envmap_f and internally in backend, clears the frame
 void R_ClearScreen(void);
 // invoke refresh of frame
 void SCR_UpdateScreen(void);
+// invoke refresh of loading plaque (nothing else seen)
+void SCR_UpdateLoadingScreen(void);
 
 // public structure
 typedef struct rcachearrayrequest_s
@@ -108,11 +111,14 @@ rcachearrayrequest_t;
 int R_Mesh_CacheArray(rcachearrayrequest_t *r);
 
 extern float varray_vertex3f[65536*3];
+extern float varray_svector3f[65536*3];
+extern float varray_tvector3f[65536*3];
+extern float varray_normal3f[65536*3];
 extern float varray_color4f[65536*4];
 extern float varray_texcoord2f[4][65536*2];
 extern float varray_texcoord3f[4][65536*3];
-extern float varray_normal3f[65536*3];
 extern int earray_element3i[65536];
+extern float varray_vertex3f2[65536*3];
 
 #endif