Acme-MITHALDU-BleedingOpenGL
view release on metacpan or search on metacpan
FreeGLUT/freeglut-Readme.txt view on Meta::CPAN
%PATH% environment variable. Be careful not to mix the 32 bit DLL up with the 64
bit DLL, as they are not interchangeable.
Compiling 32 bit Applications
To create a 32 bit freeglut application, create a new Win32 C++ project in MSVC.
From the Win32 Application Wizard, choose a Windows application, check the
Empty project box, and submit.
Youll now need to configure the compiler and linker settings. Open up the
project properties, and select All Configurations (this is necessary to ensure
our changes are applied for both debug and release builds). Open up the
general section under C/C++, and configure the include\ folder you created
above as an Additional Include Directory. If you have more than one GLUT
package which contains a glut.h file, its important to ensure that the
freeglut include folder appears above all other GLUT include folders.
Now open up the general section under Linker, and configure the lib\
folder you created above as an Additional Library Directory. A freeglut
application depends on the import libraries freeglut.lib and opengl32.lib,
which can be configured under the Input section. However, it shouldnt be
necessary to explicitly state these dependencies, since the freeglut headers
handle this for you. Now open the Advanced section, and enter mainCRTStartup
as the Entry Point for your application. This is necessary because GLUT
applications use main as the application entry point, not WinMainwithout it
youll get an undefined reference when you try to link your application.
Thats all of your project properties configured, so you can now add source
files to your project and build the application. If you want your application to
be compatible with GLUT, you should #include <GL/glut.h>. If you want to use
freeglut specific extensions, you should #include <GL/freeglut.h> instead.
Dont forget to either include the freeglut DLL when distributing applications,
or provide your users with some method of obtaining it if they dont already
have it!
Compiling 64 bit Applications
"t",
"inc"
]
},
"prereqs" : {
"build" : {
"requires" : {
"ExtUtils::MakeMaker" : "0"
}
},
"configure" : {
"requires" : {
"ExtUtils::MakeMaker" : "0"
}
},
"runtime" : {
"requires" : {
"Import::Into" : "0",
"Test::More" : "0",
"Try::Tiny" : "0"
}
---
abstract: 'bleeding edge OpenGL experiments - you WILL get cut'
author:
- 'Chris Marshall <chm at cpan dot org>'
build_requires:
ExtUtils::MakeMaker: '0'
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 1
generated_by: 'ExtUtils::MakeMaker version 7.1, CPAN::Meta::Converter version 2.150005'
license: unknown
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: '1.4'
name: Acme-MITHALDU-BleedingOpenGL
no_index:
directory:
Window window;
} XDestroyWindowEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
Bool from_configure;
} XUnmapEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
Bool override_redirect; /* boolean, is override set... */
XExposeEvent xexpose;
XGraphicsExposeEvent xgraphicsexpose;
XNoExposeEvent xnoexpose;
XVisibilityEvent xvisibility;
XCreateWindowEvent xcreatewindow;
XDestroyWindowEvent xdestroywindow;
XUnmapEvent xunmap;
XMapEvent xmap;
XMapRequestEvent xmaprequest;
XReparentEvent xreparent;
XConfigureEvent xconfigure;
XGravityEvent xgravity;
XResizeRequestEvent xresizerequest;
XConfigureRequestEvent xconfigurerequest;
XCirculateEvent xcirculate;
XCirculateRequestEvent xcirculaterequest;
XPropertyEvent xproperty;
XSelectionClearEvent xselectionclear;
XSelectionRequestEvent xselectionrequest;
XSelectionEvent xselection;
XColormapEvent xcolormap;
XClientMessageEvent xclient;
XMappingEvent xmapping;
XErrorEvent xerror;
pogl_gl_top.xs view on Meta::CPAN
PPCODE:
{
XEvent event;
char buf[10];
KeySym ks;
XNextEvent(d,&event);
switch(event.type) {
case ConfigureNotify:
EXTEND(sp,3);
PUSHs(sv_2mortal(newSViv(event.type)));
PUSHs(sv_2mortal(newSViv(event.xconfigure.width)));
PUSHs(sv_2mortal(newSViv(event.xconfigure.height)));
break;
case KeyPress:
case KeyRelease:
EXTEND(sp,2);
PUSHs(sv_2mortal(newSViv(event.type)));
XLookupString(&event.xkey,buf,sizeof(buf),&ks,0);
buf[0]=(char)ks;buf[1]='\0';
PUSHs(sv_2mortal(newSVpv(buf,1)));
break;
case ButtonPress:
( run in 0.852 second using v1.01-cache-2.11-cpan-0a6323c29d9 )