Conceitos de Computação Gráfica e a biblioteca Open Graphics Language

Este artigo visa descrever o que é a Computação Gráfica e a biblioteca OpenGL,  que é nos dias atuais é um padrão da industria para aplicações profissionais. De maneira errônea, muitas pessoas acreditam que Computação Gráfica é saber usar programas para editar fotos ou trabalhar com desenhos vetoriais, tais como PhotoShop, Core Draw, 3DStudio… no entanto isso seria limitar a área ao simples uso de aplicações com finalidades específica para criação e manipulação de figuras, desenhos, cores, texturas.

Atualmente todas as áreas da computação dependem de aplicações gráficas de alto desempenho. Isso requer naturalmente, grandes recursos de hardware para processar estes ambientes e interfaces, além naturalmente da necessidade de programadores experientes para lidar com as mais diversas bibliotecas e tecnologias existentes.

A Computação Gráfica é uma área da Ciência da Computação dedicada ao estudo e desenvolvimento de técnicas e algoritmos para geração de imagens, bem como análise e manipulação das mesmas. Está presente em diversas áreas do conhecimento, que vão desde aplicações para Engenharia em projetos e modelagem de objetos, simuladores e na criação de jogos eletrônicos.

A Computação Gráfica surge somente após a criação de periféricos gráficos de entrada e saída, pois antes as informações eram representadas somente por meio de caracteres alfanuméricos. A quantidade de cálculos matemáticos em aplicações gráficas necessita de muita memória e recursos de processamento em termos de velocidade.

Para aproveitar melhor a capacidade de hardware e facilitar a criação de aplicações gráficas, o mais comum é que programadores utilizem bibliotecas prontas que trazem uma infinidade de funcionalidades rotinas comuns. No caso específico da Computação Gráfica, programadores necessitam de rotinas gráficas para elaborar rapidamente programas sem ter a preocupação de desenvolver algoritmos básicos, tais como um segmento de reta, inclinação, preenchimento de objetos e etc.

A Open Graphics Library – OpenGL pode ser compreendida como um conjunto de rotinas gráficas e de modelagem que facilita o desenvolvimento de aplicações gráficas, sejam elas bidimensionais ou tridimensionais.

A OpenGL é gerenciada por um consórcio independente formado em 1992 formado por diversas empresas tais como 3DLabs, Apple, NVIDIA, SGI, ORACLE (SUN), Microsoft e diversas outras. A OpenGL se trata de uma API para a criação de programas gráficos 2D e 3D multiplataforma que serve tanto para estações de trabalho potentes ou computadores pessoais. Seu funcionamento é semelhante a uma biblioteca da linguagem de programação C. Um programa ou aplicação baseado em OpenGL pode ser escrito em alguma linguagem de programação que utiliza uma ou mais rotinas da biblioteca OpenGL.

A biblioteca OpenGl está atualmente na versão 4.0 e está disponível para download em http://www.opengl.org.

Para facilitar o desenvolvimento de aplicações gráficas, há algumas bibliotecas que nos auxiliam com diversas funções para criar janelas e gerenciar eventos. As mais utilizadas são a GLU e a GLUT.

A GLU (OpenGL Utility Library) é mais comum e instalada com a OpenGL. Seguem uma rígida padronização nos nomes das funções, sendo utilizado sempre o prefixo glu. Destacamos que é usada na definição de matrizes para projeção e orientação da visualização, mapeamento de coordenadas e desenho de superfícies quadráticas.

A GLUT (OpenGL Utility Toolkit) foi desenvolvida para facilitar o desenvolvimento de interfaces. É um kit de ferramentas independente de plataforma que inclui alguns elementos de GUI (Graphical User Interface). Com a CLUT podemos por exemplo criar menus pop-ups, gerenciar eventos de teclado, mouse. Entendemos que a GLUT encapsula a complexidade das APIs dos vários sistemas de janelas que existem hoje em dia.

Veremos a seguir como configurar o embiente de desenvolvimento para o uso a linguagem C ou C++, no entanto hoje é possível desenvolver aplicações gráficas usando linguagens modernas como C# ou Java[1].

A seguir as instruções consideram que o usuário esteja usando a ferramenta Dev C++. Para instalar o ambiente de desenvolvimento o mesmo está disponível em http://www.bloodshed.net/devcpp.html.

Para instalar a biblioteca GLUT na ferramenta DEV-C++, selecione o menu Ferramentas/Atualizações. Na janela WebUpdate, selecione o servidor devpaks.org e clique em Check for updates. O programa irá baixar os pacotes disponíveis. Selecione o grupo OpenGL e marque a linha contendo glut. Clique no botão Download selected e aguarde. Siga as instruções da tela para que a instalação seja concluída. Para se certificar que a instalação foi concluída, verifique se existe a biblioteca litglut32 no diretório LIB do Dev C++.

Agora que o nosso ambiente de programação (a ferramenta DEV C++) está pronta para estudarmos e experimentarmos os recursos da real Computação Gráfica.

No próximo artigo veremos exemplos de como desenvolver usando OpenGL.

BIBLIOGRAFIA

WRIGTH, Richard S. Jr.; SWEET, Michael. OpenGL
SuperBible. 2nd ed. Indianapolis, Indiana: Waite Group Press, 2000.

MANSSOUR, Isabel Harb.; COHEN, Marcelo. OpenGL
Uma abordagem prática e objetiva. São Paulo. Novatec Editora, 2006.

http://www.opengl.org / – The Industry’s
Foundation for High Performance Graphics

http://www.opengl.org /resources/tutorials / – OpenGL Coding Tutorials

http://www.opengl.org/resources/libraries/glut.html – GLUT -( The Open Utility Toolkit)


 

Comentarios

comentarios