para Free Pascal, que emula o Delphi, onde o Free Pascal é um compilador General Public
License (GPL) que funciona em Linux, Win32, OS/2, Mac OS e outros.
Lazarus permite desenvolver programas com as sintaxes do Delphi em todas as
plataformas acima. E foi desenvolvido para ser total e completamente independente da
Application Programming Interface (API), é uma ferramenta feita em código aberto que
possui interface interativa, componentes de banco de dados, integração com OpenGL, etc.
OpenGL é uma biblioteca muito eficiente e pode ser utilizada em uma larga variedade
de linguagens de programação, possuindo rotinas gráficas e de modelagem, bi (2D) e
tridimensional (3D), extremamente portável e rápida. Essa biblioteca é uma sofisticada API
para criação de aplicações gráficas 2D e 3D, portanto quando se diz que um programa é
baseado em OpenGL ou é uma aplicação OpenGL, significa que ele é escrito em alguma
linguagem de programação que faz chamadas a uma ou mais bibliotecas OpenGL (COHEN e
MANSSOUR, 2006).
OpenGL é uma interface entre softwares gráficos e o hardware, com cerca de 150
comandos distintos que podem ser utilizados para especificar objetos e operações necessários
para implementar aplicações tridimensionais interativas. A biblioteca OpenGL fornece um
conjunto de primitivas gráficas (pontos, linhas e polígonos) para construção de modelos,
suporte a iluminação, sombreamento, mapeamento de textura, transparência, animação,
transformações geométricas, etc. A biblioteca OpenGL Utility Library (GLU) fornece várias
funções para modelagem, tais como superfícies quadráticas, curvas e superfícies NURBS
(Non Uniform Rational B-Splines Surfaces) (WOO et al., 1999), (WRIGHT e SWEET, 2000).
Os comandos do OpenGL são disponibilizados através de bibliotecas dinâmicas,
conhecidas como Dinamic Link Library (DLL) e seus respectivos arquivos header e library,
onde os arquivos header são incluídos no código-fonte, enquanto os arquivos library devem
ser incluídos no projeto (AZEVEDO e CONCI, 2003). Pode-se citar algumas das bibliotecas
dinâmicas, ou seja, arquivos DLL, tais como:
• OpenGL32.DLL é o arquivo que contém as funções padrão do OpenGL, definidas pelo
OpenGL Architeture Review Board;
• GLU32.DLL é a biblioteca de utilitários que contém funções para desenho de esferas,
cubos, cilindros, etc;
• GLAUX.DLL (OpenGL Auxiliar) contém os comandos da chamada auxiliar e permite
desenvolver aplicações simples, independente da plataforma e sistema operacional;