150 likes | 264 Views
UNIVERSIDADE CATÓLICA DE PELOTAS. INTRODUÇÃO AO OPENGL. Por Anderson Afonso Cardozo. http://kledac.890m.com/apresentacao.zip. ROTEIRO. INTRODUÇÃO FUNCIONAMENTO CARACTERÍSTICAS BIBLIOTECA GLU BIBLIOTECA GLUT TIPOS DE DADOS EM OPENGL PADRONIZAÇÃO DE FUNÇÕES EXEMPLOS DE FUNÇÕES
E N D
UNIVERSIDADE CATÓLICA DE PELOTAS INTRODUÇÃO AO OPENGL Por Anderson Afonso Cardozo http://kledac.890m.com/apresentacao.zip
ROTEIRO • INTRODUÇÃO • FUNCIONAMENTO • CARACTERÍSTICAS • BIBLIOTECA GLU • BIBLIOTECA GLUT • TIPOS DE DADOS EM OPENGL • PADRONIZAÇÃO DE FUNÇÕES • EXEMPLOS DE FUNÇÕES • BIBLIOGRAFIA
INTRODUÇÃO • Biblioteca gráfica • Rotinas de modelagem • Animações • Criada em 1992 pela Silicon Graphics • Gerenciada pelo Grupo ARB(Apple, Nvidia,SGI,SUN) • Independente de plataforma • Camada em Alto Nível de Funções Gráficas
FUNCIONAMENTO • Máquina de Estados, com valores default • glEnable(GL_LIGHTING) • glDisable(GL_LIGHTING) • Pipeline de Renderização Armazenamento em memória dos comandos em opengl Processamento de dados geométricos e imagens Chamadas e funções da API OpenGL Operações de fragmento Rasterization Frame Buffer
CARACTERÍSTICAS • Facilidade de Aprendizado • Criação de Janelas Gráficas • Gerenciamento de eventos como Mouse, Teclado... • Biblioteca GLUT(openGl toolkit), criação e manipulação de janelas independentes • Biblioteca GLU • Extremamente veloz
BIBLIOTECA GLU • Instalada junto com a OpenGL • Projeção Ortográfica 2D • Especificação Câmera
BIBLIOTECA GLUT • Toolkit Independente de plataforma • Gerencia eventos • Criação de menus pop-up • Muito Utilizada no aprendizado • Prefixo Padrão “glut”
PADRONIZAÇÃO DE FUNÇÕES • <prefixoBiblioteca><ComandoRaiz><contadorArgumentosOpcional> <TipodeArgumentosOpcional> Exemplo: Void glColor3f(GLfloat red, GLfloat green, GLfloat blue) gl-> é o prefixo que representa a biblioteca Color -> Comando Raiz que identifica o objetivo da função 3 -> Contador para o número de argumentos que a função possui f -> Indica que os argumentos são valores de ponto flutuante
EXEMPLOS DE FUNÇÕES • void gluLookAt(GLdouble obsx, GLdouble obsy, GLdouble obsz, GLdouble alvox, GLdouble alvoy, GLdouble alvoz, GLdouble upx, GLdouble upy, GLdouble upz) • void gluPerspective(GLdouble fovy, GLdouble aspect, GLdouble zNear, GLdouble zFar)
EXEMPLOS DE FUNÇÕES • void glFrustum (GLdouble left , GLdouble right , GLdouble bottom , GLdouble top , GLdouble zNear , GLdouble zFar ); O comando glFrustum define uma matriz de projeção que deixa a câmera alinhada ao eixo z e com direção de projeção ortogonal ao plano de projeção (default do OpenGL). • void glViewport(GLint x, GLint y, GLsizei width, GLsizei height) • void gluOrtho2D(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top)
EXEMPLOS DE FUNÇÕES • tgaLoad (“TGAimage.tga”, &image, TGA FREE|TGA LOW QUALITY ); • voidglFogf (GLenumpname, GLfloat param) • voidglFogi (GLenumpname, GLfloat param) • voidglFogfv (GLenumpname, constGLfloat *params)
EXEMPLOS DE FUNÇÕES • FOG • PROJEÇÃO
BIBLIOGRAFIA • Cohen M. and Manssour I., OpenGL Uma Abordagem Pr´atica e Objetiva, 2006. • http://www.dcc.ufla.br/~bruno/aulas/cg/monte-mor/44.htm • http://www.falloutsoftware.com/tutorials/gl/gl0.htm • http://www.inf.pucrs.br/~manssour/OpenGL/Tutorial.html