Personal Pack para OpenGL
Presentación
Cabe destacar que recomiendo que usen la versión glPak. Lib estatica para así evitar problemas de DLL sobre cualquier computador con Windows 9x o superior.
Otras librerías para OpenGL
OpenGL (Core) :
OpenGL (core) esta contenido por :
- OpenGL32.dll OpenGl32.Lib Primitivas de dibujo
- glu32.dll glu32.lib extras del nucleo GL
GLUT (GL Utilies Toolkit) :
Pueden descargar el archivo adjunto glut-3.7.6-bin.zip (ver mas abajo)
GLAUX (GL Auxiliar) :
En lo particular considero que GLAUX es bueno, pues en una LIB estática, no necesita DLL, pero con MingW o Dev-C++ no se que pasa hay un error con GLAUX, pues al terminar de compilar pide glaux.dll y eso no es correcto.
Personal Pack para OpenGL
glPak es mas versatil que cualquier otro producto pues ademas de permitir la comunicacion entre los perifericos y la ventana, permite crear un contexto de renderizacion separado y adjudicable a un formulario padre. es decir se puede crear la View de renderizacion y manipularla desde un Dialogo MFC , Formulario Delphi o C++ Builder.
- Version DLL :
Para quienes gustan de trabajar con DLL, esta version les permitira obtener los beneficio de la glPak, usando un modulo separado ademas de que es reemplazable para quienes desean buscar las actualizaciones.
Disponible para descargas : glPak-vDLL (ver mas abajo) - Version LIB estática :
Esta es mi favorita pues necesita una .DLL y el EXE se hace completamente libre de ellas y solo necesita un computador con Win9x o superior, la utilizacion de esta version no varia, pues el archivo glPak.h, se encarga de la conversion para LIB o LIB-DLL, solo es necesario cambiar los archivos LIB, y todo listo.
Disponible para descargas : glPak-vLIB (ver mas abajo)
Modo de Uso
- Code: Seleccionar todo
- glPak.dll .\WindowsSystem y .\Windows\System32\
- glPak.lib .\Microsoft Visual Studio\Vc98\Lib\
- glPak.h .\Microsoft Visual Studio\Vc98\Include\GL\
La Version LIB estatica, no necesita tanto, pues solo neceista copiar la .H y el archivo .LIB puede estar en la misma carpeta que el proyecto a compilar como podran apreciar en los ejemplos, ahora veamos como se declara en el .CPP
- Code: Seleccionar todo
- //
- // Ejemplo 1 : Uso correcto de glPak
- #include <windows.h> // De rigor
- #include <gl/gl.h> // para las primitivas
- #include <gl/glPak.h> // nuestro glPak
- // ....
- void OnDisplay( )
- {
- // Incializacion de la lona de dibujo
- glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
- // define la primitiva de dibujo
- glBegin( GL_QUADS );
- glColor3f( 1.0, 0.0, 1.0 ); glVertex2f( -0.5,0.5 );
- glColor3f( 0.0, 0.0, 1.0 ); glVertex2f( 0.5,0.5 );
- glColor3f( 0.0, 1.0, 0.0 ); glVertex2f( 0.5,-0.5 );
- glColor3f( 1.0, 0.0, 0.0 ); glVertex2f( -0.5,-0.5 );
- glEnd();
- // enviar la orden de volcado
- mglSwapBuffers();
- };
- int WINAPI WinMain( HINSTANCE hInstance,
- HINSTANCE hPrevInst,
- LPSTR lpArgs, int nCmdShow )
- {
- mglInitDisplayMode( 0 );
- mglInitWindowRect( 100, 100, 300, 300 );
- mglCreateWindow( "Demostracion - ML Pack" );
- mglDisplayFunc( OnDisplay );
- mglKeyboardFunc( OnKeyPress );
- mglResizeFunc( OnResizeWindow );
- mglIdleFunc( OnIdle );
- mglMainLoop();
- }
Ejemplos
- Ejemplo 01 : Texturas
Aquí hemos recompilado un viejo ejemplo que usaba glaux, esta variante usa nuestra glPak con algunas mejoras todo funciona normalmente.
- Ejemplo 02 : Renderizar en MFC
Como crear contexto de rederizacion fuera del clasico Win32, para desarrolladores de alto vuelo con MFC, crea como Child y adjudica al dialogo padre para manipular el dibujo se pasa como argumento una funcion de redibujado, incluye codigo abstracto de MFC con CodeGeneratorX
- Ejemplo 03 : glPak con Dev-C++
Ejemplos usando Win32 con el mejor compilador para Win32 - GNU MingW, Visual C++ con Win32 no pasa nada, pues se desperdicia tanto potencial.
Archivos Adjuntos
- glut-3.7.6-bin.zip118.14 KiB
Librerías Glut - wTextura.zip79.43 KiB
Código fuente del ejemplo de textura - wDialogMFC.zip40.16 KiB
Código fuente del ejemplo para Visual C++ MFC - glPakDevCpp.zip60.87 KiB
Código fuente en devcpp - EjemplosLIB.zip115.52 KiB
Ejemplos LIB - glPak.v1.1.1.d-DLL.zip35.69 KiB
glPack Version DLL - glPak.v1.1.1.d-LIB.zip27.58 KiB
glPack Version LIB estática
Otros Artículos en esta sección
-
na forma de utilizar el control ActiveX MSFlexGrid en aplicaciones Visual C++ basadas en MFC, este control es útil para visualizar datos.Shell para Simulación es una herramienta donde el usuario de manera interactiva puede modelar sistemas reales y definir sus características. La herramienta está orientada a la simulación de sistemas dinámicos y estocásticos que cambian de manera discreta.Es una técnica para reducir el parpadeo producido al dibujar en la pantalla, es muy útil para desarrollar juegos por que éstos suelen requerir refrescamiento continuo de pantalla.¿Alguna duda? Sientete libre de hacer tus pruntas en nuestro:
foro deVisual C++ »