Introdução ao OpenGL
|
|
|
- Amadeu Custódio Neto
- 8 Há anos
- Visualizações:
Transcrição
1 Introdução ao OpenGL Leandro Tonietto Processamento Gráfico / Computação Gráfica Jogos Digitais [email protected] Mar-2008 Alguns slides são provenientes da apresentação do professor Christian Hofsetz
2 Sumário Introdução Programando com OpenGL Exemplos
3 Introdução O que é OpenGL? [1] Open Graphics Library Interface de software para hardware gráfico. É uma biblioteca de modelagem e gráficos 3D, altamente portável e muito rápida. Independente de SO e de hardware. Muito mais rápido do que implementação puramente em software, como: motores de gráficos ou software de ray-tracing.
4 Introdução Inicio: Biblioteca gráfica desenvolvida para rodar aplicações gráficas sobre o hardware proprietário da Silicon Graphis Inc. (SGI). Primeira versão foi o IRIS GL, biblioteca gráfica das estações IRIS Graphics da SGI. Hardware que provia transformações de matrizes com altíssima performance. OpenGL surge da decisão de portar a IRIS GL para um padrão aberto, para suportar outros fabricantes de dispositivos gráficos, outras plataformas de hardware e outros sistemas operacionais.
5 Introdução OpenGL ARB: API aberta não pode ser de propriedade de uma empresa apenas. Surge então o OpenGL Architecture Review Board (ARB) Consórcio, originalmente, formado por SGI, Digital Equipament Corporation, IBM, Intel e Microsoft. Outras empresas fazem parte do consórcio, como: SUN, nvidia, ATI,... 01/07/1992 sai a primeira versão da especificação da OpenGL. A partir de 2006 SGI transfere o controle sobre o padrão OpenGL para o grupo de trabalho The Khronos Group ( Atualmente, este grupo promove o OpenGL e outros padrões como o OpenGL ES (para dispositivos móveis). OpenGL está na versão 4.0. Utilizaremos OpenGL na versão 2.0 da especificação.
6 Introdução Software x hardware: SW tem muito menos performance que HW e alguns efeitos especiais podem ser proibitivos nas aplicações gráficas. SW pode executar em qualquer plataforma sem que o usuário necessite de hardware especial, no caso hardware gráfico. HW tem performance, porém maior custo. OpenGL interage com o hardware. Uma aplicação gráfica que use a OpenGL necessitará que o dispositivo gráfico (placa-devídeo) e o driver gráfico implementem a especificação da OpenGL.
7 Introdução Como funciona a OpenGL API Procedural. Programador invoca comandos OpenGL para compor uma cena. OpenGL não renderiza uma cena descrita, ela deve ser programada em código. De forma mais básica, os objetos são desenhados com primitivas gráficas: pontos, linhas e polígonos em 3D. Permite visualização de objetos em qualquer ponto de um espaço 3D. OpenGL suporta também iluminação e sombreamento, mapeamento de textura, blending, transparência, animação e diversos outros efeitos especiais. Faz a conversão das primitivas para imagem rasterização. Não possui funcionalidades para gerenciamento de janela, interação com o usuário ou acesso a arquivos (I/O). É necessário utilizar alguma biblioteca adicional (GLUT, SDL,...) Também não existe nenhum formato de arquivo associado ao OpenGL para modelos ou ambientes virtuais. O programador deve fazer a carga e interpretação dos formatos de arquivos comuns e converter para primitivas gráficas.
8 Introdução Como funciona a OpenGL Framebuffer Brilho Cor do fog Erro Luz Cor atual Matriz Largura da linha Textura
9 Introdução Como funciona a OpenGL OpenGL em software x em hardware X Implementação Microsoft Processamento passa por GDI Mais lenta Limitação de funcionalidades Implementação no driver do HW Comunicação direta com dispositivo Mais rápida
10 Introdução Como funciona a OpenGL Pipeline OpenGL Aplicação executa chamadas as funções da API da OpenGL. Comandos e dados (vértices, textura e etc) são armazenados no command buffer. Quando do flush os vértices passam pelo processamento matemático (transformações geométricas e de iluminação) Depois é feita a rasterização para cria uma imagem colorida a partir da geometria, cor e dados de textura. A imagem é colocada num framebuffer, que é a memória do dispositivo gráfico.
11 Modelo de Aplicação Dados 2D/3D Modelo da Aplicação Aplicação OpenGL/GLUT/SDL/DirectX Sistema Gráfico Manipula dados e define o que será desenhado e aonde.
12 Modelo de Aplicação Dados 2D/3D Modelo da Aplicação Aplicação GLUT Manipula dados e define o que será desenhado e aonde. GLUT sistema de janelas independente de sistema. Não é livre
13 Modelo de Aplicação Dados 2D/3D Modelo da Aplicação Aplicação Manipula dados e define o que será desenhado e aonde. SDL Simple DirectMedia Layer. LGPL. É livre
14 Bibliotecas OpenGL Headers: Microsoft Windows opengl32.dll OpenGL utility library (GLU) glu32.dll Conjunto de funções utilitárias para tarefas comuns e complexas, algumas matrizes especiais para cálculo e suporte para curvas e superfícies. gl.h header de prototipação das funções OpenGL glu.h header de prototipação das funçoes GLU Exemplo de #include para um programa OpengGL: #include <windows.h> // não vem no VisualC++ Express #include <gl/gl.h> #include <glu/glu.h> #include glee.h // extensões da OpenGL #include glut.h // freeglut
15 Tipos de dados para se usar com a API OpenGL
16 Convenção de nomes glvertex3f(0.0f, 0.0f, 0.0f); glvertex3i(0, 0, 0); glvertex3v(vertex[0]);
17 Convenção de nomes Começam com gl... Próximas palavras começa com a primeira letra maiúscula. glbegin() Constantes começam com GL_ e são sempre em maiúsculas. GL_COLOR_BUFFER_BIT
18 Lembre-se: OpenGL é máquina de estados, desenha primitivas e o estado das variáveis altera o resultado da síntese da imagem. Um objeto é desenhado com a cor que está definida, com iluminação que está definida, com as transformações previamente definidas e etc. Portanto, um vez definida um propriedade, ela ficará residente até tenha o seu estado limpo ou alterado com outro valor. Por exemplo, quando uma cor é definida ela será usada em qualquer processo de colorização até que ocorra um novo comando de cor. OpenGL não faz interação com usuário, portanto, não gerencia entrada e saída de dados. É necessário o uso de alguma biblioteca para gerenciamento de GUI. Padrão GLUT.
19 Como uma máquina de estados, os comandos também podem ter seu estado definido/alterado apenas como ligado ou desligado. glenable() e gldisable() É o caso da iluminação: glenable(gl_lighting) CUIDADO: a troca frequente de estados afeta a performance. O melhor é setar os estados uma vez só, quando possível.
20 Desenho de primitivas: Basicamente, é a definição dos vértices das primitivas e das propriedades de cor, normais, texturas e etc. Tudo definido entre glbegin(<primitiva>) e glend() Exemplo: glbegin(gl_triangles); glcolor3f(0.0, 0.0, 1.0); glvertex3f(0.0, 0.0, 0.0); glvertex3f(1.0, 0.0, 0.0); glvertex3f(0.5, 0.5, 0.0); glend(); Outros comandos utilizados dentro do bloco: glcolor*(), glnormal*(), glmaterial*()
21 Primitivas: Primitiva / Constante GL_POINTS GL_LINES GL_LINE_STRIP GL_LINE_LOOP GL_TRIANGLES GL_TRIANGLE_STRIP GL_TRIANGLE_FAN GL_QUADS GL_QUAD_STRIP GL_POLYGON Descrição Pontos individuais Par de vértices = 1 linha Pontos conectados por linhas = strip + 1 linha para fechar 3 pontos = 1 triângulo Série de triângulos conectados Todos tri compartilham ponto zero 4 pontos = 1 quadrilátero Série de quads. conectados Todos pontos = 1 polígono
22 Primitivas:
23 Primitivas. Exemplos: glbegin(gl_polygon); // ou glbegin(gl_points); glvertex2f(0.0, 0.0); glvertex2f(0.0, 3.0); glvertex2f(4.0, 3.0); glvertex2f(6.0, 1.5); glvertex2f(4.0, 0.0); glend();
24 glcolor3f(0.0f, 0.5f, 1.0f); glbegin(gl_polygon); glvertex glend(); glcolor(0.0f, 0.0f, 0.0f); glbegin(gl_line_loop); glvertex glend(); 24
25 Tipos de polígonos: Válidos Inválidos
26 Objetos curvos são aproximados por retas:
27 Exemplo. Desenhando um círculo: #define PI GLfloat circle_points = 100.0f; GLfloat angle, raiox=1.0f, raioy=1.0f; glbegin(gl_line_loop); for (int i = 0; i < circle_points; i++) { } glend(); angle = 2*PI*i/circle_points; glvertex2f(cos(angle)*raiox, sin(angle)*raioy); Note que: O tamanho do círculo é dado pelo raio, no exemplo é desenhado um círculo com raio 1 Definindo o valor dos raios X e Y com valores diferentes, pode-se desenhar uma elipse.
28 Modo de polígono: glpolygonmode(<lado>,<modo>) <lado> GL_FRONT_AND_BACK GL_FRONT GL_BACK <modo> GL_POINT GL_LINE GL_FILL
29 Tratamento de erros em OpenGL: Quando fazemos algo inválido em OpenGL ou GLU o programa não pára; apenas não faz o que a gente espera. Isso dificulta a depuração! Quando um erro ocorre um flag é setado com um código de erro. Para acessar esse código deve-se usar glgeterror(); Por outro lado cada chamada OpenGL a mais afetam a performance Em alguns casos quando queremos renderização em tempo real temos que eliminar o maior número possível dessas chamadas! Lembre-se: todos os comandos são bufferizados e processados.
30 Matrizes: Três tipos de matrizes: GL_MODELVIEW: A matriz modelview controla as transformações dos vértices dos objetos da cena GL_PROJECTION A matriz de projeção controla como a cena 3-D é projetada em 2-D GL_TEXTURE A matriz de texturas (geralmente pouco conhecida e utilizada) transforma as coordenadas das textura para obter efeitos como projetar e deslocar texturas
31 Matrizes de projeção: glfrustum(left,right,bottom,top,near,far) glortho(left,right,bottom,top,near,far) gluperspective(fovy,aspect,znear,zfar) gluortho2d(left,right,bottom,top) glulookat(eyex, eyey, eyez, centerx, centery, centerz, upx, upy, upz) Coordenadas de Tela glviewport(x, y, width, height)
32 Transformações: Modelagem gltranslate{fd}(x, y, z) glrotate{fd) (angle, x, y, z ) glscale{fd}(x,y,z) Propriedades Materiais glmaterial*() ambiente, difuso, especular Fontes de Luz gllight*() cor, posição, atenuação, etc
33 Exemplo: // Estabelece o modo de projeção glmatrixmode(gl_projection); // limpa matrizes glloadidentity(); // especifica o Frustum glfrustum(-1, 1, -1, 1, 0.0, 40.0); // habilita estado de modelagem glmatrixmode(gl_modelview); // cria matriz de transformação glpushmatrix(); // define uma transformação de rotação em X,Y,Z glrotatef(45.0, 1.0, 1.0, 1.0); render(); // invoca um método do programa glpopmatrix();
34 Dicas: Lembre-se que a origem do OpenGL é no canto esquerdo (e é baseado em um sistema de coordenadas left-hand ) Lembre-se de (1) ativar o modo de preenchimento desejado (por ex.: glenable(gl_depth_test);) e de (2) Limpar os respectivos buffers! (por ex.: glclear(gl_color_buffer_bit GL_DEPTH_BUFFER_BIT);) Evitar mudanças constantes de estado Maior freqüência de erros: posicionamento de câmera. Atente-se para olhar de um ponto e para um ponto que seja coerente com os objetos renderizados.
35 Dicas: Ao manipular as matrizes OpenGL lembre-se de verificar se o tipo de matriz correto está ativado. Por exemplo: glmatrixmode(gl_projection); glloadidentity(); glfrustum(-1, 1, -1, 1, 0.0, 40.0); /* glmatrixmode(gl_modelview); */ glpushmatrix(); glrotatef(45.0, 1.0, 1.0, 1.0); render(); glpopmatrix();
36 Renderização de textos: Programando com OpenGL OpenGL não dá nenhum suporte nativo para o tratamento textos e de fontes gráficas. Portanto, o texto não considerado uma primitiva ou algo do gênero para ser renderizado. Deve ser utilizado algum recurso de biblioteca para fazer esta tarefa. GLUT e SDL possuem métodos para suportar a renderização como uma imagem: Exemplo GLUT: //Para posicionar na coordenada (x,y) glrasterpos2f(x,y); //Chamada GLUT para escrita glutbitmapcharacter(fonte,*(texto++));
37 Renderização de textos: Usado em fonte GL_BITMAP_8_BY_13 GL_BITMAP_9_BY_15 GL_BITMAP_TIMES_ROMAN_10 GL_BITMAP_TIMES_ROMAN_24 GL_BITMAP_HELVETICA_10 GL_BITMAP_HELVETICA_12 GL_BITMAP_HELVETICA_18
38 Alguns métodos normalmente presentes em programas OpenGL: init() inicializiação de variáveis e de estados permanentes. display() é que a coisa acontece!! Desenho das primitivas e definição dos estados relacionados a elas, como cor, textura e outros aspectos. update() alterações a serem realizadas quando do redimensionamento da janela. getinputs() processamento de entradas como teclado e mouse.
39 Exemplos de código para o método init(): void init(){ glmatrixmode(gl_projection); glloadidentity(); gluperspective(50.0, 1.0, -10.0, 7.0); glenable(gl_lighting); const float specularcolor[]={1.0f,0.0f,1.0f,0.5f}; gllightfv(gl_light0, GL_SPECULAR, specularcolor); glmatrixmode(gl_modelview); }
40 Exemplos de método update():
41 Exemplos de método display():
42 Exemplos de método getinputs():
43 OpenGL Fake or Real?
44 Bibliografias OpenGL Programming Guide (Woo, Neider, Davis - Addison-Wesley ) OpenGL Programming for the X Window System OpenGL Game Programming (Astle, Hawkins, LaMothe)
45 Bibliografias Red Book Tutorial de OpenGL (Português) Referência (API) para PyOpenGL Documentação para PyOpenGL Referência (API) para wxpython Tutorial básico de wxpython
46 Referências bibliográficas WRIGHT Jr., Richard S.; LIPCHAK, Benjamin; HAEMEL, Nicholas. OpenGL Superbible: Comprehensive Tutorial and Reference. 4ed.: Addison-Wesley Slides do prof. Dr. Christian Hofsetz. Slides do prof. João Bittencourt
Introdução Programando com OpenGL Exemplos. O que é OpenGL? [1]
Sumário ao OpenGL Exemplos Leandro Tonietto Processamento Gráfico / Computação Gráfica Jogos Digitais [email protected] http://www.inf.unisinos.br/~ltonietto Mar-2008 Alguns slides são provenientes
Computação Gráfica - OpenGl 02
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica - OpenGl 02 Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti
OpenGL. http://www.opengl.org. Alberto B. Raposo
OpenGL http://www.opengl.org Alberto B. Raposo OpenGL: o que é? API Interface para programador de aplicação Aplicação API abstrata API Hardware & Software Dispositivo de saída Dispositivo de entrada Por
OpenGL. Soraia Musse
OpenGL Soraia Musse Roteiro Introdução OpenGL x DirectX Utilização Exemplo de Programa Nomes das Funções/Métodos Bibliotecas Máquina de Estados Linhas, Pontos e Polígonos Transformações Geométricas Introdução
CG 2013/2014 Primeiro Teste LEIC Alameda/Taguspark
Computação Gráfica Licenciatura em Engenharia Informática e de Computadores Alameda / Taguspark Primeiro Teste 6 de Outubro de 013 O teste tem a duração de 1h00, tolerância incluída. Responda às questões
OpenGL, GLU e GLUT. GLUT (OpenGL Utility Toolkit) OpenGL. Linguagem. OpenGL. Esqueleto de um programa em PyOpenGL
OpenGL, GLU e GLUT http://www.opengl.org/resources http://pyopengl.sourceforge.net GLUT (OpenGL Utility Toolkit) O GLUT é uma biblioteca de rotinas independentes do SO, que fornecem as ferramentas necessárias
n À primeira vista: basta desenhar n Uma subrotina para desenhar cada tipo de objeto n Mas... n Como fazer interação? n Como estruturar a cena?
Programação Gráfica Computação Gráfica OpenGL Renato Ferreira À primeira vista: basta desenhar Uma subrotina para desenhar cada tipo de objeto Mas... Como fazer interação? Como estruturar a cena? Como
Primitivas do OpenGL. Tomás Antônio C. Badan
Primitivas do OpenGL Tomás Antônio C. Badan 1 Primitivas Formas simples que combinadas, geram objetos mais complexos Blocos de construção de objetos Podem ser 1D, 2D ou 3D Vão desde pontos, linhas até
Revisões. Módulos Sistemas Gráficos e Interação. Filipe Pacheco SGRAI 2017/18 DEI-ISEP 228. Instituto Superior de Engenharia do Porto
Módulos 1-10 Sistemas Gráficos e Interação Instituto Superior de Engenharia do Porto Filipe Pacheco [email protected] Revisões SGRAI 2017/18 DEI-ISEP 228 Desenho de objectos simples glbegin(mode) / glend()
Computação Gráfica OpenGl 01
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica OpenGl 01 Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti
Introdução a OpenGL. Renato Rodrigues Oliveira da Silva Danilo Medeiros Eler
Introdução a OpenGL Renato Rodrigues Oliveira da Silva Danilo Medeiros Eler Adaptado do material de Marcela X. Ribeiro Maria Cristina F. de Oliveira Rosane Minghim Sumário Introdução Núcleo OpenGL, GLU,
Conceitos importantes da Computação Gráfica [3]
Programa de Educação Tutorial Ciência da Computação - UFRN Minicurso Agosto de 2012 Conceitos importantes da Computação Gráfica [3] Computação Gráfica é a área da Ciência da Computação que estuda a geração,
Transformações geométricas
Módulo 7 Sistemas Gráficos e Interação Instituto Superior de Engenharia do Porto Filipe Pacheco [email protected] Transformações geométricas SGRAI 2017/18 DEI-ISEP 97 Conteúdo Tipos de transformações Model/View
OpenGL. Sumário COMPUTAÇÃO GRÁFICA E INTERFACES. Introdução. Introdução. Carlos Carreto
Sumário COMPUTAÇÃO GRÁFICA E INTERFACES OpenGL Carlos Carreto Curso de Engenharia Informática Ano lectivo 2003/2004 Escola Superior de Tecnologia e Gestão da Guarda Introdução Utilização Tipos de dados
Computação Gráfica OpenGL 05 3D
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica OpenGL 05 3D Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti
Computação Gráfica OpenGL 05 3D
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica OpenGL 05 3D Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti
OpenGL. Conceitos Básicos. Waldemar Celes. Tecgraf/PUC-Rio
OpenGL Conceitos Básicos Waldemar Celes Tecgraf/PUC-Rio 1 API OpenGL: o que é? Interface para programador de aplicação Aplicação Aplicação API abstrata OpenGL API Software & Hardware Dispositivo de saída
Introdução à Programação em OpenGL. Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com
Introdução à Programação em OpenGL Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com OPENGL (Open Graphical Library) OpenGL é uma interface de software (API Aplication Program Interface) para aceleração
INTRODUÇÃO A OPENGL. Computação Gráfica
INTRODUÇÃO A OPENGL Computação Gráfica OpenGL (Open Graphic Library) Biblioteca de rotinas gráficas e de modelagem, bi e tridimensional, extremamente portável e rápida. Não é uma linguagem de programação,
OpenGL. Parte I: Geometria. Waldemar Celes Departamento de Informática Tecgraf/PUC-Rio
OpenGL Parte I: Geometria Waldemar Celes Departamento de Informática Tecgraf/PUC-Rio API OpenGL: : o que é? Interface para programador de aplicação Aplicação API Hardware & Software API abstrata Dispositivo
PROGRAMAÇÃO OPENGL LIVRO: TEORIA DA COMPUTAÇÃO GRÁFICA
PROGRAMAÇÃO OPENGL PROGRAMAÇÃO OPENGL Componentes Oficiais GL GLU Não oficiais GLUT PROGRAMAÇÃO OPENGL Disponível em várias linguagens Delph Visual Basic Java C/C++ GLUT http://www.opengl.org/developers/documentation/glut/index.html
Introdução ao Processamento Gráfico
Introdução ao Processamento Gráfico Leandro Tonietto Processamento Gráfico - Unisinos [email protected] http://www.inf.unisinos.br/~ltonietto ago-09 Sumário Introdução e conceitos Resumo das linhas
Introdução à Computação Gráfica. Claudio Esperança Paulo Roma Cavalcanti
Introdução à Computação Gráfica Claudio Esperança Paulo Roma Cavalcanti Estrutura do Curso Ênfase na parte prática Avaliação através de trabalhos de implementação C / C++ OpenGL c/ GLUT Grau (nota) baseado
Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic [email protected]. 3 de maio de 2011. SCC0250 - Computação Gráca
Introdução à Opengl com Java SCC0250 - Computação Gráca Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic [email protected] Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade
Capítulo 3 Primeiros Passos em OpenGL Função Desenha Função Teclado Função Inicializa Programa Principal...
Sumário Prefácio...15 Capítulo 1 Introdução...17 Capítulo 2 Instalação...22 2.1 Visão Geral das Bibliotecas OpenGL...22 2.2 Bibliotecas Necessárias para Execução...24 2.3 Bibliotecas Necessárias para Compilação...24
UNIVERSIDADE FEDERAL FLUMINENSE Pedro Martins Menezes. Um estudo dos estágios dos pipelines gráficos
UNIVERSIDADE FEDERAL FLUMINENSE Pedro Martins Menezes Um estudo dos estágios dos pipelines gráficos Niterói 2008 Pedro Martins Menezes Um estudo dos estágios dos pipelines gráficos Trabalho de Conclusão
OpenGL. Introdução ao OpenGL. Sistemas de Coordenadas. OpenGL 29/04/2010. Profa. M. Cristina Profa. Rosane. Application Programming Interface (API)
OpenGL Introdução ao OpenGL Profa. M. Cristina Profa. Rosane Application Programming Interface (API) Coleção de rotinas que o programador pode chamar Modelo de como estas rotinas operam em conjunto para
LAB. 1. Introdução à OpenGL
LAB. 1 Introdução à OpenGL OpenGL O que é? É uma biblioteca de funções gráficas. É uma API (Application Programming Interface) gráfica 2D e 3D Primitivas vectoriais e rasterizadas (imagens) Capaz de gerar
3D no OpenGL. Visualização e Transformações Perspectiva. Transformações do Modelview. Processo
Visualização e Transformações Perspectiva 3D no OpenGL Para gerar imagens de um objeto 3D, é necessário compreender transformações perspectiva Foley & van Dam - Cap. 6 Notas de aula do Prof. Mount: aulas
Introdução a OpenGL. Profª. Alessandra Martins Coelho
Introdução a OpenGL Profª. Alessandra Martins Coelho março/ 2013 OpenGL OpenGL é uma API gráfica que permite a criação de imagens gráficas 2D e 3D, através da definição de objetos (2D/3D) por um conjunto
FUNDAMENTOS E APLICAÇÕES. Luis Valente
FUNDAMENTOS E APLICAÇÕES Luis Valente 1 DIÁRIO DE BORDO OpenGL Aplicações Usando OpenGL Sistema de Janelas Primitivas Cores e Sombreamento Transformações e Projeções Composição de Objetos Mapeamento de
Computação Gráfica - 13
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica - 13 Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav
Projeções e Visualização
Computação Gráfica 5385: Licenciatura em Engenharia Informática Cap. 4 Projeções e Visualização Projeções e Visualização Sumário Pipeline de Visualização em OpenGL x y z w vértice original MODELVIEW matrix
Introdução Geral a Computação Gráfica. Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina de Computação Gráfica
Introdução Geral a Computação Gráfica Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina de 2 Introdução Geral a O que é CG? Áreas de Atuação Definição, Arte e Matemática Mercado
Desenvolvimento de jogos tridimensionais com OpenGL. Bruno Pereira Evangelista
Desenvolvimento de jogos tridimensionais com OpenGL Bruno Pereira Evangelista [email protected] Aula 1 Introdução ao curso Desenhando objetos simples Introdução ao curso Apresentação do curso Pré-requisitos
Prof. Fernando V. Paulovich 3 de agosto de SCC Computação Gráca
Dispositivos de Saída e SCC0250 - Computação Gráca Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic [email protected] Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade
Computação Gráfica Abel J. P. Gomes. Engenharia Informática (5385) - 2º ano, 2º semestre Matemática (5828) - 2º ano, 2º semestre
Computação Gráfica Abel J. P. Gomes Engenharia Informática (5385) - 2º ano, 2º semestre Matemática (5828) - 2º ano, 2º semestre Cap. 0: Planificação do Processo de Ensino-Aprendizagem Engenharia Informática
Computação Gráfica OpenGl 03
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica OpenGl 03 Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti
OpenGL Um tutorial. Luis Valente. Instituto de Computação - Universidade Federal Fluminense [email protected]. Dezembro, 2004
OpenGL Um tutorial Instituto de Computação - Universidade Federal Fluminense [email protected] Dezembro, 2004 Resumo OpenGL é uma biblioteca para modelagem e visualização tridimensional em tempo real,
Visualização. - Aula 4 -
Visualização - Aula 4 - Pipeline de visualização 2D window recorte mapeamento viewport descrição geométrica rasterização Visualização de objetos 2D y viewport 1 região (window) 1 região (window) 2 viewport
Desenho de uma matriz de retângulos Serve de base para o exercício das cores
Desenho de uma matriz de retângulos Serve de base para o exercício das cores Leandro Tonietto Processamento Gráfico - Unisinos [email protected] http://professor.unisinos.br/ltonietto 19-Mar-2014 Leandro
Computação Gráfica Introdução
Computação Gráfica Introdução UniverCidade - Prof. Ismael H F Santos April 05 Prof. Ismael H. F. Santos - [email protected] 1 Considerações Gerais Objetivo: Discutir os principais conceitos eos
OpenGL. Uma Abordagem Prática e Objetiva. Marcelo Cohen Isabel Harb Manssour. Novatec Editora
OpenGL Uma Abordagem Prática e Objetiva Marcelo Cohen Isabel Harb Manssour Novatec Editora Capítulo 1 Introdução A Computação Gráfica é uma área da Ciência da Computação que se dedica ao estudo e ao desenvolvimento
Modelagem Geométrica
Modelagem Geométrica Leandro Tonietto Computação Gráfica Desenvolvimento Jogos e Entretenimento Digital [email protected] http://professor.unisinos.br/ltonietto/jed/cgr/modelgeom.pdf ago-11 02-Mar-11
Pipeline de Visualização 3D
Pipeline de Visualização 3D André Tavares da Silva [email protected] Capítulo 5 de Foley Capítulo 2 de Azevedo e Conci Processo de Visualização https://www.youtube.com/watch?v=ogqam2mykng Processo de
Projeções e Transformações em 3D
Projeções e Transformações em 3D Computação Gráfica DCC065 Prof. Rodrigo Luis de Souza da Silva, D.Sc. Sumário O que são projeções Conversão 3D-2D Tipos de Projeção Projeções Paralelas Projeções Isométricas
Iluminação e Sombreamento
Iluminação e Sombreamento Leandro Tonietto Computação Gráfica Unisinos [email protected] http://professor.unisinos.br/ltonietto/jed/cgr/iluminacao.pdf ago-11 Baseado no material do prof. Christian
Prof. Dr. Leandro Alves Neves. Conceitos Fundamentais. Algoritmos de Conversão Matricial.
Informática II Conteúdo 03 Prof. Dr. Leandro Alves Neves Sumário Rasterização Conceitos Fundamentais. Algoritmos de Conversão Matricial. Polígonos Construção e Preenchimento de polígonos com formas arbitrárias
Introdução a Prática em OpenGL
Introdução a Prática em OpenGL Universidade de São Paulo USP Disciplina de Computação Gráfica Profª Maria Cristina PAE: Thiago Silva Reis Santos Agosto de 2010 Sumário Bibliotecas Necessárias Instalação
COMPUTAÇÃO GRÁFICA - PROF. MSC. LEANDRO TONIETTO SELEÇÃO DE OBJETOS EM OPENGL - SELECT BUFFER
COMPUTAÇÃO GRÁFICA - PROF. MSC. LEANDRO TONIETTO SELEÇÃO DE OBJETOS EM OPENGL - SELECT BUFFER INTRODUÇÃO Além de aspectos visuais de modelagem, é comum em uma aplicação gráfica a seleção de objetos renderizados
OpenGL. Computação Gráfica ISEL/DEETC/SP Computação Gráfica
OpenGL Computação Gráfica CG @ 2007 ISEL/DEETC/SP Computação Gráfica 1 Jellys Tetris Gorillas PacMan Sokoban 3 Sumário Introdução ao OpenGL (capítulos 1 e 2 do red book) O que é? Sintaxe Máquina de estados
Computação Gráfica II
Computação Gráfica II Revisão Introdução ao OpenGL Prof. Rodrigo Rocha [email protected] http://www.bolinhabolinha.com Informações Bibliografia GOMES, J. e VELHO, L. Computação Gráfica: Volume
Programação Gráfica Cap 2
Programação Gráfica (2.2 a 2.7) Instituto Superior Técnico, 2006/2007 Índice Programação 2D Sistemas de Coordenadas API do OpenGL Primitivas e Atributos Introdução à Cor Projecções Interacção com o Sistema
Cap. 4: Janelas, Visores & Recorte Gráfico
Cap. 4: Janelas, Visores & Recorte Gráfico Sumário Definições básicas: sistema de coordenadas globais, sistema de coordenadas do ecrã; janela de domínio de cena; janela de interface e visores de saída
Computação Gráfica e Áreas Correlatas
INF 1366 Computação Gráfica Interativa Alberto B. Raposo [email protected] http://www.tecgraf.puc-rio.br/~abraposo/inf1366 Computação Gráfica e Áreas Correlatas processamento de imagens Imagem
Construção de objeto e superfícies em OpenGL
Sumário Construção de objeto e superfícies em OpenGL Leandro Tonietto Computação Gráfica Jogos Digitais [email protected] http://www.inf.unisinos.br/~ltonietto/jed/cgr/constopengl.pdf out-08 Introdução
CG 2015/2016 Segundo Teste LEIC Alameda/Taguspark. Segundo Teste. 18 de Novembro de 2015
CG 015/016 Segundo Teste LEIC Alameda/Taguspark Computação Gráfica Licenciatura em Engenharia Informática e de Computadores Alameda / Taguspark Segundo Teste 18 de Novembro de 015 O teste tem a duração
Programa de Aprimoramento Discente em Modelagem Geométrica Computacional. Curso Básico de OpenGL
Universidade Federal de Minas Gerais Programa de Aprimoramento Discente em Modelagem Geométrica Computacional Curso Básico de OpenGL Dezembro 2003 Universidade Federal de Minas Gerais Av. Antônio Carlos,
António Costa. Paulo Roma Cavalcanti
Introdução à Computação Gráfica Preâmbulo Adaptação: Autoria: João Paulo Pereira António Costa Claudio Esperança Paulo Roma Cavalcanti Computação Gráfica Modelos Matemáticos Análise (reconhecimento de
Computação Gráfica. Licenciatura em Engenharia Informática e de Computadores Taguspark / Alameda. Primeiro Teste 17 de Março de 2012
Computação Gráfica Licenciatura em Engenharia Informática e de Computadores Taguspark / Alameda Primeiro Teste 7 de Março de O teste tem a duração de h, tolerância incluída. Responda às questões unicamente
Engenharia Informática Computação Gráfica
Computação Gráfica 11569 - Engenharia Informática Gráficos 3D - Evolução Histórica Computação Gráfica 1 Sumário! Criação de Gráficos! Criação de Modelos 3D! Pipeline Gráfico! Hardware Gráfico! Bibliotecas
Sistemas Gráficos e Modelos Cap 1
Sistemas Gráficos e Modelos (Cap. 1) Criação de Imagem Instituto Superior Técnico, 2006/2007 1 2 Interior com Reflexos Componentes Hardware: Processadores Gráficos Software: Núcleos Gráficos Aplicações:
Programação Gráfica 2D com OpenGL (Aulas 22, 24 e 25)
MC102 Introdução à Programação de Computadores Programação Gráfica 2D com OpenGL (Aulas 22, 24 e 25) Felipe P.G. Bergo 1 Introdução OpenGL é uma biblioteca de funções utilizada para programar gráficos.
CRAb Grupo de Computação Gráfica Departamento de Computação UFC
Computação Gráfica I CRAb Grupo de Computação Gráfica Departamento de Computação UFC Objetivos Estudar equipamentos, técnicas de programação e conceitos matemáticos Para representação, manipulação e projeção
COMPUTAÇÃO GRÁFICA COM WEBGL
COMPUTAÇÃO GRÁFICA COM WEBGL Aluno: Ian Albuquerque Raymundo da Silva Orientador: Hélio Côrtes Vieira Lopes Introdução: WebGL é uma API (Application Program Interface - do inglês, Interface de Programação
Resumo. Computação Gráfica: Uma Proposta de Plano Pedagógico. Áreas Correlatas. Definição. Uma Visão Integrada da C.G.
Computação Gráfica: Uma Proposta de Plano Pedagógico Luiz Velho Definições Metodologia Estrutura Avaliação Discussão Resumo IMPA - Instituto de Matemática Pura e Aplicada Definição Computação Gráfica:
Curvas e Superfícies Paramétricas
Curvas e Superfícies Paramétricas Leandro Tonietto Computação Gráfica Jogos Digitais [email protected] http://professor.unisinos.br/ltonietto/jed/cgr/curvas.pdf 5-12 Baseado nos slides do professor
Plano de Ensino de Disciplina Ciência da Computação 2º / 2016
Plano de Ensino de Disciplina Ciência da Computação 2º / 2016 Disciplina: Computação Gráfica e Processamento de Imagens Código: 016031 Série: 8 0 Semestre Carga Horária Semanal: 04 aulas Carga Horária
Introdução ao OpenGL. Professora: Maria Cristina Ferreira de Oliveira. Erick Gómez Nieto Agosto, 2011 Introdução ao OpenGL
Professora: Maria Cristina Ferreira de Oliveira PAE: Erick Gómez Nieto [email protected] 1 Introdução as API s Gráficas API (Application programming interface) Interface implementada por um programa
Teclado Virtual. MAC0420/MAC5744 Introdução Computação Gráfica. IME Instituto de Matemática e Estatística USP Universidade de São Paulo
Teclado Virtual MAC0420/MAC5744 Introdução Computação Gráfica - IME Instituto de Matemática e Estatística USP Universidade de São Paulo Grupo Cristina Fang Daniel M. G. Clua Paulo Cheque Vivian D. Betoni
Computação Gráfica e Áreas Correlatas
INF 1366 Computação Gráfica Interativa Alberto B. Raposo [email protected] http://www.tecgraf.puc-rio.br/~abraposo/inf1366 Computação Gráfica e Áreas Correlatas processamento de imagens Imagem
INF1339 Computação Gráfica Tridimensional. Waldemar Celes. 10 de Agosto de 2010
Iluminação INF1339 Computação Gráfica Tridimensional Waldemar Celes [email protected] sala 505 RDC Tecgraf, DI/PUC-Rio 10 de Agosto de 2010 W. Celes Iluminação 1 Iluminação e Shading Iluminação Interação
Professor: Computação Gráfica I. Anselmo Montenegro Conteúdo: - Introdução. Instituto de Computação - UFF
Computação Gráfica I Professor: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: - Introdução 1 Computação Gráfica : noção clássica DADOS 1200 1200 1.000000 1.000000 37.600000 2.000000 1.000000 39.600000
Computação Gráfica. Prof. MSc. André Yoshimi Kusumoto
Prof. MSc. André Yoshimi Kusumoto [email protected] Prof. MSc. André Yoshimi Kusumoto Email: [email protected] Site: http://www.kusumoto.com.br CARGA HORÁRIA SEMANAL: 02 horas-aula
7. Projeções Geométricas e Visualização 3D
7. Projeções Geométricas e Visualização 3D Aprendemos a criar e transformar geometricamente objetos 3D, no entanto, nossa janela de visualização é apenas bi-dimensional. Assim, necessitamos desenvolver
Transformações Geométricas
Transformações Geométricas Computação Gráfica Motivação! Transformações geométricas! Translação, Rotação, Reflexão! Variação de Tamanho (scaling), Cisalhamento (shearing)! Projecção Ortogonal, Projecção
OpenGL Conceitos Básicos
Universidade Federal de Santa Maria Departamento de Eletrônica e Computação Prof. Cesar Tadeu Pozzer Disciplina: Computação Gráfica [email protected] 23/05/202 OpenGL Conceitos Básicos Histórico Antes
Simulação do controle de tráfego de automóveis em uma malha rodoviária urbana: Versão 3.0
Trabalho de Conclusão de Curso Simulação do controle de tráfego de automóveis em uma malha rodoviária urbana: Versão 3.0 Ederson André Savi Orientador: José Roque Voltolini da Silva Roteiro Introdução
Sistemas de Cores. Leandro Tonietto Processamento Gráfico Jogos Digitais set-09
Sistemas de Cores Leandro Tonietto Processamento Gráfico Jogos Digitais [email protected] http://www.inf.unisinos.br/~ltonietto set-09 Sumário Introdução Cores RGB HSV Referências 4-set-09 Leandro
Computação Gráfica - 01
Universidade Federal do Vale do São Francisco Curso de Engenharia de Computação Computação Gráfica - 01 Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav
