]> icculus.org git repositories - taylor/freespace2.git/blob - include/gropenglinternal.h
embed standalone web in executable
[taylor/freespace2.git] / include / gropenglinternal.h
1 /*
2  * Copyright (C) Volition, Inc. 1999.  All rights reserved.
3  *
4  * All source code herein is the property of Volition, Inc. You may not sell
5  * or otherwise commercially exploit the source or things you created based on
6  * the source.
7  */
8
9 #ifndef _OPENGLINTERNAL_H
10 #define _OPENGLINTERNAL_H
11
12 #include "2d.h"
13
14
15 extern SDL_Window *GL_window;
16
17 extern int GL_version;
18
19 extern int GL_viewport_x;
20 extern int GL_viewport_y;
21 extern int GL_viewport_w;
22 extern int GL_viewport_h;
23 extern float GL_viewport_scale_w;
24 extern float GL_viewport_scale_h;
25 extern int GL_min_texture_width;
26 extern int GL_max_texture_width;
27 extern int GL_min_texture_height;
28 extern int GL_max_texture_height;
29
30
31 void opengl_alloc_render_buffer(unsigned int nelems);
32 void opengl_free_render_buffer();
33
34 typedef struct rb_t {
35         float x, y, z, w;
36         float u, v;
37         ubyte r, g, b, a;
38         ubyte sr, sg, sb, sa;
39 } rb_t;
40
41 extern rb_t *render_buffer;
42
43
44 // gr_* pointer functions
45 void gr_opengl_force_fullscreen();
46 void gr_opengl_force_windowed();
47 void gr_opengl_toggle_fullscreen();
48
49 #endif  // _OPENGLINTERNAL_H