#ifndef __SG_EXTENSIONS_HXX
#define __SG_EXTENSIONS_HXX 1
-#if defined(__CYGWIN__) && !defined(WIN32) /* && !defined(USING_X) */
-#define WIN32
-#endif
-
-#if defined(WIN32) /* MINGW and MSC predefine WIN32 */
+#ifdef WIN32
# include <windows.h>
#endif
-#if !defined(WIN32)
-# include <dlfcn.h>
-#endif
-
#include <simgear/compiler.h>
-#include SG_GL_H
+#include <osg/GL>
+#if !defined(__APPLE__) && !defined(WIN32)
+# include <GL/glx.h>
+#endif
#if defined(__cplusplus)
extern "C" {
#endif
bool SGSearchExtensionsString(const char *extString, const char *extName);
-bool SGIsOpenGLExtensionSupported(char *extName);
+bool SGIsOpenGLExtensionSupported(const char *extName);
#ifdef __APPLE__
// don't use an inline function for symbol lookup, since it is too big
#elif defined( __APPLE__ )
return (void (*)()) macosxGetGLProcAddress(func);
-#else // UNIX
-
+#else // UNIX, default
return (void (*)()) SGGetGLProcAddress(func);
#endif
}
#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8
#endif
+/*
+ * NV_texture_rectangle
+ */
+
+#ifndef GL_EXT_texture_rectangle
+#define GL_EXT_texture_rectangle 1
+#define GL_TEXTURE_RECTANGLE_EXT 0x84F5
+#define GL_TEXTURE_BINDING_RECTANGLE_EXT 0x84F6
+#define GL_PROXY_TEXTURE_RECTANGLE_EXT 0x84F7
+#define GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT 0x84F8
+#endif
+
/*
* WGL_NV_texture_rectangle
*/
#define GL_LUMINANCE_ALPHA_FLOAT16_ATI 0x881F
#endif
+/*
+ * ARB point sprite
+ */
+#ifndef GL_ARB_point_sprite
+#define GL_ARB_point_sprite 1
+#define GL_POINT_SPRITE_ARB 0x8861
+#define GL_COORD_REPLACE_ARB 0x8862
+#endif
+
+#ifndef GL_NV_point_sprite
+#define GL_NV_point_sprite 1
+#define GL_POINT_SPRITE_NV 0x8861
+#define GL_COORD_REPLACE_NV 0x8862
+#define GL_POINT_SPRITE_R_MODE_NV 0x8863
+#endif
+
+#ifndef GL_VERSION_2_0
+#define GL_POINT_SPRITE 0x8861
+#define GL_COORD_REPLACE 0x8862
+#endif
+
/*
* ARB_vertex_program
*/
}
#endif
+
#endif // !__SG_EXTENSIONS_HXX