Acme-MITHALDU-BleedingOpenGL

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

	Updated test.pl to support Game Mode
	Implemented glutCloseFunc
	Implemented glutLeaveMainLoop
	Major refactoring of Makefile.PL
	Renamed WGL interface option to W32API
	Added help message to Makefile.PL
	Added verbose option to Makefile.PL
	Added documentation comments to OpenGL.xs
	Added glpHasGLUT
	Updated test.pl to run texhack if no GLUT
	Added a countdown timer to examples/texhack
	Fixed GL_X_BYTES in assign
	Fixed vertex.glsl to work on newer nvidia cards
	Implemented glutIgnoreKeyRepeat
	Implemented glutSetKeyRepeat
	Implemented glutForceJoystickFunc
	Added FreeGLUT support for cygwin builds
	Fixed builds for Apple's recent Mac OS changes
	Added README for building on Mac OS

	Chris Marshall

glext_consts.h  view on Meta::CPAN

    i(GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER)
    i(GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER)
    i(GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER)
    i(GL_INVALID_INDEX)
#endif /* GL_VERSION_3_1 */

#ifndef NO_GL_VERSION_3_2
#ifndef GLEXT_64_TYPES_DEFINED
/* This code block is duplicated in glxext.h, so must be protected */
/* Define int32_t, int64_t, and uint64_t types for UST/MSC */
/* (as used in the GL_EXT_timer_query extension). */
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#elif defined(__sun__) || defined(__digital__)
#if defined(__STDC__)
#if defined(__arch64__) || defined(_LP64)
#else
#endif /* __arch64__ */
#endif /* __STDC__ */
#elif defined( __VMS ) || defined(__sgi)
#elif defined(__SCO__) || defined(__USLC__)
#elif defined(__UNIXOS2__) || defined(__SOL64__)

glext_consts.h  view on Meta::CPAN


#ifndef NO_GL_ARB_texture_storage_multisample
#endif /* GL_ARB_texture_storage_multisample */

#ifndef NO_GL_ARB_texture_swizzle
#endif /* GL_ARB_texture_swizzle */

#ifndef NO_GL_ARB_texture_view
#endif /* GL_ARB_texture_view */

#ifndef NO_GL_ARB_timer_query
#endif /* GL_ARB_timer_query */

#ifndef NO_GL_ARB_transform_feedback2
#endif /* GL_ARB_transform_feedback2 */

#ifndef NO_GL_ARB_transform_feedback3
#endif /* GL_ARB_transform_feedback3 */

#ifndef NO_GL_ARB_transform_feedback_instanced
#endif /* GL_ARB_transform_feedback_instanced */

glext_consts.h  view on Meta::CPAN

#endif /* GL_EXT_texture_snorm */

#ifndef NO_GL_EXT_texture_swizzle
    i(GL_TEXTURE_SWIZZLE_R_EXT)
    i(GL_TEXTURE_SWIZZLE_G_EXT)
    i(GL_TEXTURE_SWIZZLE_B_EXT)
    i(GL_TEXTURE_SWIZZLE_A_EXT)
    i(GL_TEXTURE_SWIZZLE_RGBA_EXT)
#endif /* GL_EXT_texture_swizzle */

#ifndef NO_GL_EXT_timer_query
    i(GL_TIME_ELAPSED_EXT)
#endif /* GL_EXT_timer_query */

#ifndef NO_GL_EXT_transform_feedback
    i(GL_TRANSFORM_FEEDBACK_BUFFER_EXT)
    i(GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT)
    i(GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT)
    i(GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT)
    i(GL_INTERLEAVED_ATTRIBS_EXT)
    i(GL_SEPARATE_ATTRIBS_EXT)
    i(GL_PRIMITIVES_GENERATED_EXT)
    i(GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT)

glext_procs.h  view on Meta::CPAN


#ifndef NO_GL_VERSION_3_2
#ifndef GL_VERSION_3_2
#define GL_VERSION_3_2 1
#endif
typedef struct __GLsync *GLsync;
#ifndef GLEXT_64_TYPES_DEFINED
/* This code block is duplicated in glxext.h, so must be protected */
#define GLEXT_64_TYPES_DEFINED
/* Define int32_t, int64_t, and uint64_t types for UST/MSC */
/* (as used in the GL_EXT_timer_query extension). */
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#include <inttypes.h>
#elif defined(__sun__) || defined(__digital__)
#include <inttypes.h>
#if defined(__STDC__)
#if defined(__arch64__) || defined(_LP64)
typedef long int int64_t;
typedef unsigned long int uint64_t;
#else
typedef long long int int64_t;

glext_procs.h  view on Meta::CPAN

#define GL_ARB_texture_swizzle 1
#endif
#endif /* GL_ARB_texture_swizzle */

#ifndef NO_GL_ARB_texture_view
#ifndef GL_ARB_texture_view
#define GL_ARB_texture_view 1
#endif
#endif /* GL_ARB_texture_view */

#ifndef NO_GL_ARB_timer_query
#ifndef GL_ARB_timer_query
#define GL_ARB_timer_query 1
#endif
#endif /* GL_ARB_timer_query */

#ifndef NO_GL_ARB_transform_feedback2
#ifndef GL_ARB_transform_feedback2
#define GL_ARB_transform_feedback2 1
#endif
#endif /* GL_ARB_transform_feedback2 */

#ifndef NO_GL_ARB_transform_feedback3
#ifndef GL_ARB_transform_feedback3
#define GL_ARB_transform_feedback3 1

glext_procs.h  view on Meta::CPAN

#ifndef GL_EXT_texture_swizzle
#define GL_EXT_texture_swizzle 1
#endif
#define GL_TEXTURE_SWIZZLE_R_EXT          0x8E42
#define GL_TEXTURE_SWIZZLE_G_EXT          0x8E43
#define GL_TEXTURE_SWIZZLE_B_EXT          0x8E44
#define GL_TEXTURE_SWIZZLE_A_EXT          0x8E45
#define GL_TEXTURE_SWIZZLE_RGBA_EXT       0x8E46
#endif /* GL_EXT_texture_swizzle */

#ifndef NO_GL_EXT_timer_query
#ifndef GL_EXT_timer_query
#define GL_EXT_timer_query 1
#endif
#define GL_TIME_ELAPSED_EXT               0x88BF
typedef void (APIENTRYP PFNGLGETQUERYOBJECTI64VEXTPROC) (GLuint id, GLenum pname, GLint64 *params);
typedef void (APIENTRYP PFNGLGETQUERYOBJECTUI64VEXTPROC) (GLuint id, GLenum pname, GLuint64 *params);
#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glGetQueryObjecti64vEXT (GLuint id, GLenum pname, GLint64 *params);
GLAPI void APIENTRY glGetQueryObjectui64vEXT (GLuint id, GLenum pname, GLuint64 *params);
#endif
#ifdef GL_GLEXT_PROCS
static PFNGLGETQUERYOBJECTI64VEXTPROC glGetQueryObjecti64vEXT = NULL;
static PFNGLGETQUERYOBJECTUI64VEXTPROC glGetQueryObjectui64vEXT = NULL;
#endif /* GL_GLEXT_PROCS */
#endif /* GL_EXT_timer_query */

#ifndef NO_GL_EXT_transform_feedback
#ifndef GL_EXT_transform_feedback
#define GL_EXT_transform_feedback 1
#endif
#define GL_TRANSFORM_FEEDBACK_BUFFER_EXT  0x8C8E
#define GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT 0x8C84
#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT 0x8C85
#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT 0x8C8F
#define GL_INTERLEAVED_ATTRIBS_EXT        0x8C8C

glext_types.h  view on Meta::CPAN


typedef char GLchar;




#ifndef GLEXT_64_TYPES_DEFINED
/* This code block is duplicated in glxext.h, so must be protected */
#define GLEXT_64_TYPES_DEFINED
/* Define int32_t, int64_t, and uint64_t types for UST/MSC */
/* (as used in the GL_EXT_timer_query extension). */
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#include <inttypes.h>
#elif defined(__sun__) || defined(__digital__)
#include <inttypes.h>
#if defined(__STDC__)
#if defined(__arch64__) || defined(_LP64)
typedef long int int64_t;
typedef unsigned long int uint64_t;
#else
typedef long long int int64_t;

include/GL/glext.h  view on Meta::CPAN

#endif
#endif /* GL_VERSION_3_1 */

#ifndef GL_VERSION_3_2
#define GL_VERSION_3_2 1
typedef struct __GLsync *GLsync;
#ifndef GLEXT_64_TYPES_DEFINED
/* This code block is duplicated in glxext.h, so must be protected */
#define GLEXT_64_TYPES_DEFINED
/* Define int32_t, int64_t, and uint64_t types for UST/MSC */
/* (as used in the GL_EXT_timer_query extension). */
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#include <inttypes.h>
#elif defined(__sun__) || defined(__digital__)
#include <inttypes.h>
#if defined(__STDC__)
#if defined(__arch64__) || defined(_LP64)
typedef long int int64_t;
typedef unsigned long int uint64_t;
#else
typedef long long int int64_t;

include/GL/glext.h  view on Meta::CPAN

#endif /* GL_ARB_texture_storage_multisample */

#ifndef GL_ARB_texture_swizzle
#define GL_ARB_texture_swizzle 1
#endif /* GL_ARB_texture_swizzle */

#ifndef GL_ARB_texture_view
#define GL_ARB_texture_view 1
#endif /* GL_ARB_texture_view */

#ifndef GL_ARB_timer_query
#define GL_ARB_timer_query 1
#endif /* GL_ARB_timer_query */

#ifndef GL_ARB_transform_feedback2
#define GL_ARB_transform_feedback2 1
#endif /* GL_ARB_transform_feedback2 */

#ifndef GL_ARB_transform_feedback3
#define GL_ARB_transform_feedback3 1
#endif /* GL_ARB_transform_feedback3 */

#ifndef GL_ARB_transform_feedback_instanced

include/GL/glext.h  view on Meta::CPAN


#ifndef GL_EXT_texture_swizzle
#define GL_EXT_texture_swizzle 1
#define GL_TEXTURE_SWIZZLE_R_EXT          0x8E42
#define GL_TEXTURE_SWIZZLE_G_EXT          0x8E43
#define GL_TEXTURE_SWIZZLE_B_EXT          0x8E44
#define GL_TEXTURE_SWIZZLE_A_EXT          0x8E45
#define GL_TEXTURE_SWIZZLE_RGBA_EXT       0x8E46
#endif /* GL_EXT_texture_swizzle */

#ifndef GL_EXT_timer_query
#define GL_EXT_timer_query 1
#define GL_TIME_ELAPSED_EXT               0x88BF
typedef void (APIENTRYP PFNGLGETQUERYOBJECTI64VEXTPROC) (GLuint id, GLenum pname, GLint64 *params);
typedef void (APIENTRYP PFNGLGETQUERYOBJECTUI64VEXTPROC) (GLuint id, GLenum pname, GLuint64 *params);
#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glGetQueryObjecti64vEXT (GLuint id, GLenum pname, GLint64 *params);
GLAPI void APIENTRY glGetQueryObjectui64vEXT (GLuint id, GLenum pname, GLuint64 *params);
#endif
#endif /* GL_EXT_timer_query */

#ifndef GL_EXT_transform_feedback
#define GL_EXT_transform_feedback 1
#define GL_TRANSFORM_FEEDBACK_BUFFER_EXT  0x8C8E
#define GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT 0x8C84
#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT 0x8C85
#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT 0x8C8F
#define GL_INTERLEAVED_ATTRIBS_EXT        0x8C8C
#define GL_SEPARATE_ATTRIBS_EXT           0x8C8D
#define GL_PRIMITIVES_GENERATED_EXT       0x8C87

pogl_glut.xs  view on Meta::CPAN


	GLUT_PUSHMARK(sp);
	GLUT_EXTEND_STACK(sp,1);
	GLUT_PUSH_NEW_IV(win);

	PUTBACK;
	DO_perl_call_sv(handler, G_DISCARD);
}

/* Callback for glutTimerFunc */
static void generic_glut_timer_handler(int value)
{
	AV * handler_data = (AV*)value;
	SV * handler;
	int i;
	dSP;

	handler = *av_fetch(handler_data, 0, 0);

	GLUT_PUSHMARK(sp);
	GLUT_EXTEND_STACK(sp,av_len(handler_data));

pogl_glut.xs  view on Meta::CPAN

	SV *	handler
	CODE:
	{
		if (!handler || !SvOK(handler)) {
			croak("A handler must be specified");
		} else {
			AV * handler_data = newAV();
		
			PackCallbackST(handler_data, 1);
			
			glutTimerFunc(msecs, generic_glut_timer_handler, (int)handler_data);
		}
	ENSURE_callback_thread;}


# Colors

#//# glutSetColor($cell, $red, $green, $blue)
void
glutSetColor(cell, red, green, blue)
	int	cell

test.pl  view on Meta::CPAN

}
else
{
  glutInitWindowSize($Window_Width, $Window_Height);
  $Window_ID = glutCreateWindow( PROGRAM_TITLE );
}

# Get OpenGL Info
print "\n";
print PROGRAM_TITLE;
print ' (using hires timer)' if ($hasHires);
print "\n\n";
my $version = glGetString(GL_VERSION);
my $vendor = glGetString(GL_VENDOR);
my $renderer = glGetString(GL_RENDERER);
print "Using POGL v$Acme::MITHALDU::BleedingOpenGL::BUILD_VERSION\n";
print "OpenGL installation: $version\n$vendor\n$renderer\n\n";

print "Installed extensions (* implemented in the module):\n";
my $extensions = glGetString(GL_EXTENSIONS);
my @extensions = split(' ',$extensions);

utils/wgl_ext.txt  view on Meta::CPAN

GL_EXT_texture_cube_map
GL_EXT_texture_edge_clamp
GL_EXT_texture_env_combine
GL_EXT_texture_env_dot3
GL_EXT_texture_filter_anisotropic
GL_EXT_texture_lod
GL_EXT_texture_lod_bias
GL_EXT_texture_mirror_clamp
GL_EXT_texture_object
GL_EXT_texture_sRGB
GL_EXT_timer_query
GL_EXT_vertex_array
GL_HP_occlusion_test
GL_IBM_rasterpos_clip
GL_IBM_texture_mirrored_repeat
GL_KTX_buffer_region
GL_NV_blend_square
GL_NV_copy_depth_to_color
GL_NV_depth_clamp
GL_NV_fence
GL_NV_float_buffer



( run in 0.657 second using v1.01-cache-2.11-cpan-49f99fa48dc )