Desenvolvendo diversão III – OpenGL???
Mas o que exatamente é e faz o OpenGL? Segundo o site www.opengl.org, o OpenGL é “o primeiro ambiente para desenvolvimento portável de aplicações gráficas 2D e 3D”.
Embora eu particularmente prefira o Direct3D, tenho que reconhecer que OpenGL é mais fácil de usar e é portável para uma variedade de plataformas entre elas Linux, Unix, MacOS, OS/2, Windows 9X/2K/XP, BeOS (que é um SO otimizado para aplicações gráficas) e para várias linguagens de programação como C++, C#, C, Fortran, Perl, Java, Píton, Ada, VB, Delphi.
Só aí, já mostra que vale a pena dedicar um tempo para aprender e utilizar o OpenGL.
Mas o que exatamente é e faz o OpenGL?
Segundo o site, o OpenGL é “o primeiro ambiente para desenvolvimento portável de aplicações gráficas 2D e 3D”.
De fato a API do OpenGL possui uma série de funções de visualizações gráficas, efeitos especiais, renderização e texturização de imagens e dentre as suas principais vantagens estão a Estabilidade, Confiabilidade e Portabilidade.
Outro fator que torna o OpenGL uma boa opção para desenvolvimento gráfico, seja de games ou não, é a farta documentação existente tanto no site oficial quanto em sites de terceiros, forums, sites para desenvolvedores onde podem ser baixados centenas de códigos abertos.
Para não ficarmos somente na teoria, segue abaixo um pequeno código exemplo que fiz utilizando Visual C++ Express Studio que utiliza algumas das funções do OpenGL e GLUT para criar uma janela com um triangulo.
#ifndef TESTEOPENGL1_H
#define TESTEOPENGL1_H
void main();
void triangulo();
#endif
#include <glut.h>
#include "testeopengl1.h"
void main()
{
glutInitWindowSize(400,400); //Coordenadas da janela
glutCreateWindow("meu primeiro triangulo"); // Titulo que vai aparecer na janela
glutDisplayFunc(triangulo); // chama a função de desenho do triangulo
glutMainLoop(); // Fica em loop aguardando outros comandos que possam ser adicionados
}
void triangulo()
{
glColor3f(0.0f, 0.0f, 1.0f); //Selecionamos a cor Azul
glBegin(GL_TRIANGLES); // Escolhendo o tipo TRIANGLES
glVertex2f(-20.0f, 2.0f); // Cordenada de Cada vertice
glVertex2f( 0.0f,20.0f); //
glVertex2f( 20.0f, 2.0f); //
glEnd();
glFlush(); // Força a execução dos comando passados acima
}
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo