common/GL_utilities.h
a721e321
 #ifndef _GL_UTILITIES_
 #define _GL_UTILITIES_
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 #ifdef __APPLE__
 	#define GL_SILENCE_DEPRECATION
 	#include <OpenGL/gl3.h>
 #else
 	#if defined(_WIN32)
 		#include "glew.h"
 		#include <GL/gl.h>
 	#else
 		#include <GL/gl.h>
 	#endif
 #endif
 #include <stdlib.h>
 
 void printError(const char *functionName);
 GLuint loadShaders(const char *vertFileName, const char *fragFileName);
 GLuint loadShadersG(const char *vertFileName, const char *fragFileName, const char *geomFileName);
 GLuint loadShadersGT(const char *vertFileName, const char *fragFileName, const char *geomFileName,
 						const char *tcFileName, const char *teFileName);
 void dumpInfo(void);
 
 // This is obsolete! Use the functions in MicroGlut instead!
 //void initKeymapManager();
 //char keyIsDown(unsigned char c);
 
 // FBO support
 
 //------------a structure for FBO information-------------------------------------
 typedef struct
 {
 	GLuint texid;
 	GLuint fb;
 	GLuint rb;
 	GLuint depth;
 	int width, height;
 } FBOstruct;
 
 FBOstruct *initFBO(int width, int height, int int_method);
 FBOstruct *initFBO2(int width, int height, int int_method, int create_depthimage);
 void useFBO(FBOstruct *out, FBOstruct *in1, FBOstruct *in2);
 void updateScreenSizeForFBOHandler(int w, int h); // Temporary workaround to inform useFBO of screen size changes
 
 #ifdef __cplusplus
 }
 #endif
 
 #endif