Introdução OpenGL
Definição
OpenGL é um conjunto de bibliotecas desenvolvidas para aplicação gráfica.
Esta biblioteca contém um conjunto de funções que agrupam comandos de baixo nível. Permitindo criação de ambientes 2D e 3D.
Entre as várias bibliotecas existentes podemos mencionar a GLU e a GLUT.
GLU (OpenGL Utility Library) é instalada junto com o OpenGL, destinada principalmente para manipulação de matrizes complexas.
GLUT (OpenGL Utility Toolkit) que é um pacote independente de plataforma, que inclui um conjunto de bibliotecas para interface gráfica.
Instalando no linux
Nosso foco aqui é 100% linux, por isso vou apresentar 2 formas de instalar no linux.
Para instalar o OpenGL basta digitar o seguinte comando:
apt install mesa-utils freeglut3-dev freeglut3 mesa-utils-extra
Instalação do OpenGL
A instalação seguiu conforme apresentado:
Vídeo mostrando o processo:
Localizando as libs em C
Agora que instalamos as bibliotecas, temos que acha-las.
Os include ficam localizados em
/usr/include/GL
Caminho dos includes para compilação em C
Segue abaixo a contraprova de sua localização:
Agora as libs ficam em
/usr/lib/x86_64-linux-gnu/
Conforme contraprova abaixo:
Criando o Hello World
Bom como é de costume, iremos criar o nosso primeiro programa.
Não será muito inovador, mas tem a base para evoluirmos.
GIT
O código dele esta no git:
https://github.com/marcelomaurin/opengl_hello
Primeiro criaremos nosso fonte: hello.cpp
#include <GL/glut.h>
void displayMe(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POLYGON);
glVertex3d(0, 0, 0);
glVertex3d(1, 0, 0);
glVertex3d(1, 1, 0);
glVertex3d(0, 1, 0);
glEnd();
glFlush();
}
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE);
glutInitWindowSize(300, 300);
glutInitWindowPosition(100, 100);
glutCreateWindow("Hello world");
glutDisplayFunc(displayMe);
glutMainLoop();
return 0;
}
Agora iremos montar nosso arquivo de compilação: Makefile
CC=g++
SOURCE=hello.cpp
BIN=hello
LIBRARYS=-L/usr/lib/x86_64-linux-gnu/ -lglut -lGLU -lm -lGL
all: clean compile
clean:
compile:
$(CC) $(SOURCE) -o $(BIN) $(LIBRARYS)
E para completar a festa a imagem gerada e em seguida o vídeo apresentando:
Vídeo no Youtube
Vídeo de apresentação do OpenGL sendo compilado em Linux.
Referências
https://askubuntu.com/questions/96087/how-to-install-opengl-glut-libraries
OpenGL – Uma Abordagem Prática e Objetiva – Marcelo Cohen , Isabel Hard Manssour