tutorial programas iluminacion for example español ejemplos beginners c++ opengl

c++ - programas - ¿Cómo obtener la biblioteca GL/encabezados?



opengl tutorial for beginners (6)

Linux

sudo apt-get update OpenGL: sudo apt-get install libglu1-mesa-dev freeglut3-dev mesa-common-dev

Windows

Ubique su carpeta de Visual Studio donde ubica las bibliotecas y también los archivos de encabezado, descargue y copie los archivos lib en la carpeta lib y los archivos de encabezado en el encabezado. Luego copie los archivos dll a system32. Entonces tu código se ejecutará al 100%.

También Windows : para todos esos incluye solo necesita descargar glut32.lib , glut.h , glut32.dll .

#include <gl/gl.h> #include <gl/glu.h> #include <gl/glaux.h>

Este es un ejemplo, pero ¿dónde obtener encabezados GL?


Windows

En Windows debe incluir el encabezado gl.h para el soporte de OpenGL 1.1 y vincularlo con OpenGL32.lib. Ambos son parte del SDK de Windows . Además, es posible que desee los siguientes encabezados que puede obtener de http://www.opengl.org/registry .

  • <GL/glext.h> - Perfil de compatibilidad OpenGL 1.2 y superior e interfaces de extensión.
  • <GL/glcorearb.h> - Perfil de núcleo OpenGL e interfaces de extensión ARB, como se describe en el apéndice G.2 de la especificación OpenGL 4.3. No incluye interfaces encontradas solo en el perfil de compatibilidad.
  • <GL/glxext.h> - Interfaces de extensión GLX 1.3 y superiores API y GLX.
  • <GL/wglext.h> - Interfaces de extensión WGL.

Linux

En Linux, necesita establecer un vínculo con libGL.so, que generalmente es un enlace simbólico a libGL.so.1, que es un enlace simbólico a la biblioteca / controlador real que forma parte de su controlador de gráficos. Por ejemplo, en mi sistema, la biblioteca del controlador real se llama libGL.so.256.53, que es el número de versión del controlador nvidia que uso. También necesita incluir el encabezado gl.h , que generalmente es parte de un paquete de Mesa o Xorg. De nuevo, puede necesitar glext.h y glxext.h desde http://www.opengl.org/registry . glxext.h tiene extensiones GLX, el equivalente a wglext.h en Windows.

Si desea utilizar la funcionalidad OpenGL 3.x u OpenGL 4.x sin la funcionalidad que se movió a la extensión GL_ARB_compatibility , use el nuevo encabezado gl3.h de la página web del registro. Reemplaza gl.h y también glext.h (siempre que solo necesite la funcionalidad central).

Por último, pero no menos importante, glaux.h no es un encabezado asociado con OpenGL. Supongo que ha leído los horribles tutoriales de NEHE y que simplemente lo ha aceptado. Glaux es una biblioteca de Win32 horriblemente obsoleta (1996) para cargar mapas de bits sin comprimir. Use algo mejor, como libPNG, que también admite canales alfa.


¿Qué sistema operativo?

Aquí en Ubuntu, tengo

$ dpkg -S /usr/include/GL/gl.h mesa-common-dev: /usr/include/GL/gl.h $

pero no la diferencia en a) capitalización yb) barras diagonales hacia adelante / hacia atrás. Es probable que su ejemplo sea incorrecto en el uso de barras invertidas.


En Visual Studio:

//OpenGL #pragma comment(lib, "opengl32") #pragma comment(lib, "glu32") #include <gl/gl.h> #include <gl/glu.h>

Los encabezados están en el SDK: C: / Archivos de programa / Microsoft SDKs / Windows / v7.0A / Include / gl


Si estás en Windows, están instalados con la plataforma SDK (o Visual Studio). Sin embargo, los archivos de encabezado solo son compatibles con OpenGL 1.1. Necesita crear punteros de funciones para nuevas funcionalidades en versiones posteriores. ¿Puede aclarar qué versión de OpenGL está tratando de usar?