Computação Gráfica. Texturas

Tamanho: px
Começar a partir da página:

Download "Computação Gráfica. Texturas"

Transcrição

1 Computação Gráfica Texturas António Ramires Fernandes + Luís Paulo Santos- Computação Gráfica 08/09

2 Texturas Aplicar imagens 1D,2D ou 3D a primitivas geométricas Utilizações: Simular materiais: madeira, granito, tijolo Reduzir complexidade geométrica Simulação de fenómenos naturais (reflexões, refracção, luz, lens flare) DI-UM Computação Gráfica 08/09 2

3 Texturas Conceito Para aplicar uma textura a uma entidade geométrica é necessário definir um mapeamento entre pontos (pixels??) da textura e pontos (vértices??) da geometria. Exemplo: As texturas 2D têm coordenadas nos eixos s (=x),t (=y). gltexcoord2f(s,t). DI-UM Computação Gráfica 08/09 3

4 Texturas Texturas e Geometria seguem caminhos separados no pipeline gráfico, encontrando-se na fase de raster. DI-UM Computação Gráfica 08/09 4

5 Texturas Imagem: dimensões são potências de 2. Por exemplo: 512x512, 256 x 128, mas actualmente já é possível trabalhar sem esta restrição Exemplos de Formatos: LUMINANCE, RGB, RGBA,... OpenGL não tem nenhuma função para carregar texturas de ficheiro: usar bibliotecas, tais como tgalib ou DeViL DI-UM Computação Gráfica 08/09 5

6 Texturas - Utilização Definição D.1 - Carregar a imagem D.2 - Criar uma textura em OpenGL D.3 - Definir parâmetros da textura Aplicação A.1 - Definir mapeamento das coordenadas das texturas nas coordenadas das primitivas geométricas A.2 Transformações geométricas das texturas DI-UM Computação Gráfica 08/09 6

7 D.1 Leitura Imagem OpenGL não tem nenhuma função para carregar texturas de ficheiro: usar bibliotecas, tais como DeViL #include <IL/il.h> unsigned char *il_imgdata; int width, height, format, il_img; void Load_img (char *filename) { ilinit (); ilgenimages (1, &il_img); // get an unique ID ilbindimage(il_img); // Bind this image name. if (!illoadimage(filename)) return 0; // Load the image } width = ilgetinteger (IL_IMAGE_WIDTH); height = ilgetinteger (IL_IMAGE_HEIGHT); il_imgdata = ilgetdata(); format = ilgetinteger(il_image_format); DI-UM Computação Gráfica 08/09 7

8 D.2 Criar Textura Criar um OBJECTO de TEXTURA identificado pior um ID único int texid; void CreateTexture () { // create GL texture glgentextures (1, &texid); // get texture unique ID glbindtexture (GL_TEXTURE_2D, texid); // bind it // associate with data read with DevIL glteximage2d (GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, format, GL_UNSIGNED_BYTE, il_imgdata); } // Release data space created with DevIL ildeleteimages(1, &il_img); DI-UM Computação Gráfica 08/09 8

9 D.3 Parameterizar textura A parameterização da textura (que pode ser alterada em qualquer momento) permite controlar alguns aspectos do seu mapeamento na geometria // Parameterise Texture gltexparameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); gltexparameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); gltexparameteri (GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); gltexparameteri (GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); gltexenvf (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE); DI-UM Computação Gráfica 08/09 9

10 A.1 Aplicar Textura A especificação dos vértices dos polígonos é precedida da especificação do ponto da textura (texel) que aí mapeia. t in [0.. 1] s in [0.. 1] glbindtexture(gl_texture_2d,texid); glbegin(gl_quads); gltexcoord2f(0,0);glvertex3f(-1.0f, -1.0f, 0.0f); gltexcoord2f(1,0);glvertex3f( 1.0f, -1.0f, 0.0f); gltexcoord2f(1,1);glvertex3f( 1.0f, 1.0f, 0.0f); gltexcoord2f(0,1);glvertex3f(-1.0f, 1.0f, 0.0f); glend(); DI-UM Computação Gráfica 08/09 10

11 A.1 Aplicar Textura glbindtexture(gl_texture_2d,1); glbegin(gl_quads); gltexcoord2f(0,0);glvertex3f(-1.0f, -1.0f, 0.0f); gltexcoord2f(1,0);glvertex3f( 1.0f, -1.0f, 0.0f); gltexcoord2f(1,1);glvertex3f( 1.0f, 1.0f, 0.0f); gltexcoord2f(0,1);glvertex3f(-1.0f, 1.0f, 0.0f); glend(); DI-UM Computação Gráfica 08/09 11

12 A.1 Aplicar Textura A escolha de coordenadas no espaço das texturas é "livre". DI-UM Computação Gráfica 08/09 12

13 A.2 Transformação de Texturas Matriz para Texturas Permite realizar transformações geométricas sobre a textura. glmatrixmode(gl_texture); gltranslatef(0.5,0,0); glrotatef(45,0,0,1); glmatrixmode(gl_modelview); glbegin(gl_quads);... glend(); DI-UM Computação Gráfica 08/09 13

14 Activar a aplicação de Texturas Por defeito a aplicação de texturas NÃO está activada glenable (GL_TEXTURE_2D); DI-UM Computação Gráfica 08/09 14

15 D.3 Parameterização Revisitada Imagem Original glbindtexture(gl_texture_2d,texid); glbegin(gl_quads); gltexcoord2f(0,0);glvertex3f(-1.0f, -1.0f, 0.0f); gltexcoord2f(4,0);glvertex3f( 1.0f, -1.0f, 0.0f); gltexcoord2f(4,4);glvertex3f( 1.0f, 1.0f, 0.0f); gltexcoord2f(0,4);glvertex3f(-1.0f, 1.0f, 0.0f); glend(); GL_REPEAT // Parameterise Texture gltexparameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); gltexparameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); GL_CLAMP // Parameterise Texture gltexparameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP); gltexparameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP); DI-UM Computação Gráfica 08/09 15

16 Texturas - Filtros: Mag Utilizado quando a um texel da textura corresponde mais que um pixel da imagem final, ou seja quando a textura é ampliada GL_NEAREST Ao pixel é aplicado o texel que nele mapeia GL_LINEAR Ao pixel é aplicada uma média dos texel que nele mapeiam DI-UM Computação Gráfica 08/09 16

17 Texturas - Filtros: Min Utilizado quando a um pixel da imagem corresponde mais do que um texel da textura GL_NEAREST Ao pixel é aplicado o texel que nele mapeia GL_LINEAR Ao pixel é aplicada uma média dos texel que nele mapeiam DI-UM Computação Gráfica 08/09 17

18 Texturas - Filtros Mag:Nearest DI-UM Computação Gráfica 08/09 18

19 Texturas - Filtros Mag: Linear pode parecer desfocado ao perto! DI-UM Computação Gráfica 08/09 19

20 Texturas - Demos Apresentar DEMO DI-UM Computação Gráfica 08/09 20

21 Texturas 1D glteximage1d(gl_texture_1d,...) 3D glteximage3d(gl_texture_3d,...) DI-UM Computação Gráfica 08/09 21

22 Texturas - Mipmapping Do Latim multum in parvo. Problema: alterações inesperadas ao encolher texturas à medida que a camera se afasta. Causa: O processo de aplicação de filtros a uma imagem muito encolhida pode implicar alterações abruptas à imagem projectada. DEMO DI-UM Computação Gráfica 08/09 22

23 Texturas - Mipmapping Solução: Utilizar múltiplas texturas de diferentes resoluções para utilizar a escalas diferentes. Por exemplo: textura original 32 x 16 Fornecer texturas: 32x16, 16x8, 8x4, 4x2, 2x1, 1x1. É necessário fornecer uma sequência de níveis consecutivos (potências de 2). DI-UM Computação Gráfica 08/09 23

24 Texturas - Mipmapping Figura do Red Book: DI-UM Computação Gráfica 08/09 24

25 Texturas - Mipmapping 4 combinações disponíveis para filtrar uma textura (GL_MIN_FILTER): GL_NEAREST_MIPMAP_NEAREST GL_LINEAR_MIPMAP_NEAREST GL_NEAREST_MIPMAP_LINEAR GL_LINEAR_MIPMAP_LINEAR O primeiro filtro diz respeito à textura, o segundo ao mipmapping. DI-UM Computação Gráfica 08/09 25

26 Texturas - Mipmapping O OpenGL exige que se especifiquem as diferentes imagens para os diferentes níveis da pirâmide de resolução: glteximage2d (GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, format, GL_UNSIGNED_BYTE, imgdata0); glteximage2d (GL_TEXTURE_2D, 1, GL_RGBA, width/2, height/2, 0, format, GL_UNSIGNED_BYTE, imgdata1); GLU permite a criação automática dos níveis necessários para o mipmapping: glubuild2dmipmaps (GL_TEXTURE_2D, GL_RGBA, width, height, GL_RGBA, GL_UNSIGNED_BYTE, imagedata); DI-UM Computação Gráfica 08/09 26

27 Texturas - Mipmapping glbindtexture(gl_texture_2d,texname[1]); gltexparameteri(gl_texture_2d, GL_TEXTURE_WRAP_S, GL_REPEAT); gltexparameteri(gl_texture_2d, GL_TEXTURE_WRAP_T, GL_REPEAT); gltexparameteri(gl_texture_2d, GL_TEXTURE_MAG_FILTER, GL_NEAREST_MIPMAP_NEAREST); gltexparameteri(gl_texture_2d, GL_TEXTURE_MIN_FILTER, GL_NEAREST_MIPMAP_NEAREST); glubuild2dmipmaps(gl_texture_2d, GL_RGB, width, height, GL_RGB, GL_UNSIGNED_BYTE, imagedata); DEMO DI-UM Computação Gráfica 08/09 27

28 Texturas - Billboard Em vez de utilizar uma malha de polígonos para representar um objecto: Podemos usar um único polígono com uma textura correspondente às cores do objecto: DI-UM Computação Gráfica 08/09 28

29 Texturas - Billboard A técnica de billboarding pode ser usada para reduzir o número de polígonos necessários para modelar um objecto, desde que: A câmara não se aproxime demasiado do billboard O billboard esteja sempre orientado de forma a apresentar a sua face à câmara DI-UM Computação Gráfica 08/09 29

30 Texturas - Billboard Suponhamos que o polígono é desenhado no ponto (objx,objz), paralelo ao eixo dos YY e com a face frontal orientada ao longo do eixo dos XX A câmara está na posição (camx,camz) com uma view direction igual a 0 em YY (olha na horizontal) ZZ (objx,objz) obj2cam α (camx,camz) XX obj2cam = normalize(camz-objz, camx-objx) α = acos (obj2camz) No entanto, como cos(a)=cos(-a), if (obj2camx>0) rotate around YY if (obj2camx<0) rotate around YY Rotatef (a*180/pi, 0., obj2camx, 0.) DI-UM Computação Gráfica 08/09 30

31 Texturas - Billboard void billboardbegin(float cx, float cz, float ox, float oz) { float obj2cam[3], onorm, anglecos; } glpushmatrix(); obj2cam[xx] = camx - objposx ; obj2cam[yy] = 0; obj2cam[zz] = camz - objposz ; onorm = sqrt(obj2cam[xx]*obj2cam[xx]+obj2cam[zz]*obj2cam[zz]); obj2cam[xx] /= onorm; obj2cam[zz] /= onorm; anglecos = obj2cam[zz]; if ((anglecos < ) && (anglecos > )) glrotatef(acos(anglecos)*180/pi, 0., obj2cam[xx], 0.); DI-UM Computação Gráfica 08/09 31

32 Texturas - Billboard void billboardend() { } glpopmatrix(); void drawtree () { billboardbegin(cam_pos[xx], cam_pos[zz], x, z); glcolor3f(0.0,0.0,0.0); glbindtexture (GL_TEXTURE_2D, treetex); glbegin(gl_quads); gltexcoord2f(0.,0.); glvertex3f (-2.,0.,0.); gltexcoord2f(1.,0.); glvertex3f (2.,0.,0.); gltexcoord2f(1.,1.); glvertex3f (2.,5.,0.); gltexcoord2f(0.,1.); glvertex3f (-2.,5.,0.); glend(); billboardend(); } DI-UM Computação Gráfica 08/09 32

33 Texturas Billboard: transparência R,G,B,A Alpha: medida de opacidade A=0 : pixel transparente A=1 : pixel opaco glenable(gl_alpha_test); glalphafunc(gl_greater,0); // o pixel da textura só é desenhado se alpha for maior do que 0 DI-UM Computação Gráfica 08/09 33

34 Referências OpenGL Programming Guide, aka Red Book, OpenGL ARB DI-UM Computação Gráfica 08/09 34

Fundamentos de Computação Gráfica. Texturas

Fundamentos de Computação Gráfica. Texturas Fundamentos de Computação Gráfica Texturas Texturas Aplicar imagens 1D,2D ou 3D a primitivas geométricas Utilizações: Simular materiais: madeira, granito, tijolo Reduzir complexidade geométrica Simulação

Leia mais

Computação Gráfica. Texturas

Computação Gráfica. Texturas Computação Gráfica Texturas António nio Ramires Fernandes - Multimédia Texturas Aplicar imagens 1D,2D ou 3D a primitivas geométricas Utilizações: Simular materiais: madeira, granito, tijolo Reduzir complexidade

Leia mais

Texturas. Aula 7. Sistemas Gráficos e Interactivos Instituto Superior de Engenharia do Porto. Paulo Gandra de Sousa

Texturas. Aula 7. Sistemas Gráficos e Interactivos Instituto Superior de Engenharia do Porto. Paulo Gandra de Sousa Texturas (introdução) Aula 7 Sistemas Gráficos e Interactivos Instituto Superior de Engenharia do Porto Paulo Gandra de Sousa [email protected] Conteúdo Configuração de texturas Utilização de texturas

Leia mais

Tomás Antônio Costa Badan. Mapa de Textura: O Básico

Tomás Antônio Costa Badan. Mapa de Textura: O Básico Tomás Antônio Costa Badan Mapa de Textura: O Básico Introdução De acordo com o www.thefreedictionary.com: Textura Aparência e impressão de uma superfície Superfície de uma material, principalmente sentida

Leia mais

Mapeamento de Texturas

Mapeamento de Texturas Licenciatura em Engenharia Informática e de Computadores Computação Gráfica Mapeamento de Texturas Texturas Quando o resultado começa a parecer real Superfícies no mundo real são muito complexas Não se

Leia mais

FUNDAMENTOS E APLICAÇÕES. Luis Valente

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

Leia mais

Implementação do algoritmo Marching Cubes usando shaders. Luiz Fernando Oliveira Corte Real [email protected]

Implementação do algoritmo Marching Cubes usando shaders. Luiz Fernando Oliveira Corte Real lreal@ime.usp.br Implementação do algoritmo Marching Cubes usando shaders Luiz Fernando Oliveira Corte Real [email protected] Marching Cubes Textura 3D Isosuperfície 3 9 8 7 6 8 5 4 9 9 7 6 10 6 4 2 Marching Cubes Textura

Leia mais

Computação Gráfica 5385: Licenciatura em Engenharia Informática. Chap. 10 Texturas. Texturas

Computação Gráfica 5385: Licenciatura em Engenharia Informática. Chap. 10 Texturas. Texturas Computação Gráfica 5385: Licenciatura em Engenharia Informática Chap. 10 Texturas Texturas Sumário : Objectivos Noção de textura Motivação Mapeamento de textura, padrões de textura e texels Mapeamento

Leia mais

Computação Gráfica - 13

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

Leia mais

OpenGL Conceitos Avançados

OpenGL Conceitos Avançados Universidade Federal de Santa Maria Departamento de Eletrônica e Computação Prof. Cesar Tadeu Pozzer Disciplina: Computação Gráfica Avançada [email protected] 05/0/203 OpenGL Conceitos Avançados Neste

Leia mais

Computação Gráfica - 13

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

Leia mais

Introdução à Computação Gráfica Texturas

Introdução à Computação Gráfica Texturas Introdução à Computação Gráfica Texturas Adaptação: Autoria: João Paulo Pereira António Costa Claudio Esperança Paulo Roma Cavalcanti Detalhes de Superfícies Modelos de iluminação não são apropriados para

Leia mais

LAB. 1. Introdução à OpenGL

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

Leia mais

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 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

Leia mais

INTRODUÇÃO A OPENGL. Computação Gráfica

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,

Leia mais

OpenGL. Sumário COMPUTAÇÃO GRÁFICA E INTERFACES. Introdução. Introdução. Carlos Carreto

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

Leia mais

Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic [email protected]. 3 de maio de 2011. SCC0250 - Computação Gráca

Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br. 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

Leia mais

Ptex e outras ferramentas para modelagem de animação

Ptex e outras ferramentas para modelagem de animação Ptex e outras ferramentas para modelagem de animação Savyo Nóbrega ([email protected]) Agenda Motivação Conceitos Gerais Modelagem Matemática Mapeamento de texturas Softwares e ferramentas para modelagem

Leia mais

FCG2006 Prova sobre OpenGL e Rastreamento de Raios

FCG2006 Prova sobre OpenGL e Rastreamento de Raios FCG2006 Prova sobre OpenGL e Rastreamento de Raios Aluno(a): matrícula: 1. O programa SimpleLight.c mostrado no Quadro 1 produz a janela mostrada na Figura 1. A partir do código, calcule coordenadas na

Leia mais

Introdução Programando com OpenGL Exemplos. O que é OpenGL? [1]

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

Leia mais

OpenGL. Conceitos Básicos. Waldemar Celes. Tecgraf/PUC-Rio

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

Leia mais

Iluminação e sombreamento

Iluminação e sombreamento OpenGL Iluminação e sombreamento Sombreamento OpenGL calcula a cor de cada pixel e parte disso depende de qual é a iluminação usada no cenário e de como os objetos no cenário refletem ou absorvem a luz

Leia mais

Projeções e Visualização

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

Leia mais

Trabalho Prático n. 2

Trabalho Prático n. 2 Trabalho Prático n. 2 Programação com Quadtrees Métodos de Programação I 2003/04 Preâmbulo Este trabalho prático é constituído por duas secções. A primeira contém questões obrigatórias, e a segunda questões

Leia mais

Manual Processamento de Imagem. João L. Vilaça

Manual Processamento de Imagem. João L. Vilaça Manual Processamento de Imagem João L. Vilaça Versão 1.0 31/1/2014 Índice 1. Sistema de eixo e movimentos possíveis do Drone... 3 2. Imagem... 3 3. Espaços de cor... 4 4.1 RGB... 5 4.2HSV... 5 4.3 GRAY...

Leia mais

Conversão Matricial. Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic [email protected]. 20 de maio de 2011. SCC0250 - Computação Gráca

Conversão Matricial. Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br. 20 de maio de 2011. SCC0250 - Computação Gráca Conversão Matricial 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 de

Leia mais

Detalhes de Superfícies. Introdução à Computação Gráfica Texturas. Propriedades Mapeáveis. Mapeamento de Textura

Detalhes de Superfícies. Introdução à Computação Gráfica Texturas. Propriedades Mapeáveis. Mapeamento de Textura Detalhe de Superfície Introdução à Computação Gráfica Textura Claudio Eperança Paulo Roma Cavalcanti Modelo de iluminação não ão apropriado para decrever toda a diferença de cor obervávei em uma uperfície

Leia mais

OpenGL. http://www.opengl.org. Alberto B. Raposo

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

Leia mais

CG 2013/2014 Primeiro Teste LEIC Alameda/Taguspark

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

Leia mais

Introdução a OpenGL. Profª. Alessandra Martins Coelho

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

Leia mais

Utilização. de Shaders de efeitos realistas para jogos. Bruno Pereira Evangelista. Pontifícia Universidade Católica de Minas Gerais

Utilização. de Shaders de efeitos realistas para jogos. Bruno Pereira Evangelista. Pontifícia Universidade Católica de Minas Gerais Utilização de Shaders para criação de efeitos realistas para jogos Bruno Pereira Evangelista Pontifícia Universidade Católica de Minas Gerais Sumário 2/48 Apresentação pessoal Introdução Pipeline de renderização

Leia mais

Frederico Damasceno Bortoloti. Adaptado de: Claudio Esperança Paulo Roma Cavalcanti

Frederico Damasceno Bortoloti. Adaptado de: Claudio Esperança Paulo Roma Cavalcanti Fundamentos de Representação Gráfica Frederico Damasceno Bortoloti Adaptado de: Claudio Esperança Paulo Roma Cavalcanti Estrutura do Curso Avaliação através de Prova Estudo / Seminário Nota parcial NP

Leia mais

Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic [email protected]. 3 de maio de 2011. SCC0250 - Computação Gráca

Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br. 3 de maio de 2011. SCC0250 - Computação Gráca Transformações Geométricas 3D 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

Leia mais

Pipeline de Visualização Câmara Virtual

Pipeline de Visualização Câmara Virtual Pipeline de Visualização Câmara Virtual Edward Angel, Cap. 5 Instituto Superior Técnico Computação Gráfica 2009/2010 1 Na última aula... Transformações Geométricas Composição de Transformações Deformação

Leia mais

AULA 5 Manipulando Dados Matriciais: Grades e Imagens. 5.1 Importando Grades e Imagens Interface Simplificada

AULA 5 Manipulando Dados Matriciais: Grades e Imagens. 5.1 Importando Grades e Imagens Interface Simplificada 5.1 AULA 5 Manipulando Dados Matriciais: Grades e Imagens Nessa aula serão apresentadas algumas funcionalidades do TerraView relativas à manipulação de dados matriciais. Como dados matriciais são entendidas

Leia mais

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 07 Utilizando Imagens na PlayLib Prof. Augusto Baffa < [email protected]> Biblioteca Gráfica - PlayLib Conjunto de funções para criação e manipulação de formas

Leia mais

Desenho e Apresentação de Imagens por Computador

Desenho e Apresentação de Imagens por Computador Desenho e Apresentação de Imagens por Computador Conteúdo s: Aspetos genéricos sobre o trabalho com imagens computacionais. Imagens computacionais e programas que criam ou manipulam esse tipo de imagens.

Leia mais

Aula Prática Laboratorial n.º 8, nº 9 e nº 10

Aula Prática Laboratorial n.º 8, nº 9 e nº 10 Aula Prática Laboratorial n.º 8, nº 9 e nº 10 Sumário Tutorial Nate Robins texture. Programa C/OpenGL labirinto baseado no template Aula8_template.cpp Tutorial Nate Robins textures Execute o tutorial texture

Leia mais

Enquadramento e Conceitos Fundamentais

Enquadramento e Conceitos Fundamentais Licenciatura em Engenharia Informática e de Computadores Computação Gráfica Enquadramento e Conceitos Fundamentais Edward Angel, Cap. 1 Questão 9, exame de 29/06/11 [0.5v] Identifique e descreva os três

Leia mais

Primitivas Gráficas. Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com. Fonte: Material do Prof. Robson Pequeno de Sousa e do Prof.

Primitivas Gráficas. Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com. Fonte: Material do Prof. Robson Pequeno de Sousa e do Prof. Primitivas Gráficas Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com Fonte: Material do Prof. Robson Pequeno de Sousa e do Prof. Robson Lins Traçado de Primitivas em Dispositivos Matriciais Conversão

Leia mais

Apontamentos de Computação Gráfica

Apontamentos de Computação Gráfica Apontamentos de Computação Gráfica Capítulo 9 - Iluminação e Texturas em Gráficos 3D Prof. João Beleza Sousa Prof. Arnaldo Abrantes LEIC/DEETC/ISEL Novembro de 2008 Introdução Luzes Modelos de Iluminação

Leia mais

Introdução a Prática em OpenGL

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

Leia mais

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 2. Introdução a OpenGL

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 2. Introdução a OpenGL Computação Gráfica Engenharia de Computação CEFET/RJ campus Petrópolis Prof. Luis Retondaro Aula 2 Introdução a OpenGL OpenGL básico OpenGL (Open Graphical Library) Uma API para geração de gráficos 3D

Leia mais

Implementando plugins para o ImageJ

Implementando plugins para o ImageJ UNIVERSIDADE FEDERAL DE MINAS GERAIS INSTITUTO DE CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO NÚCLEO DE PROCESSAMENTO DIGITAL DE IMAGENS (NPDI) Tutorial Implementando plugins para o ImageJ Flávio

Leia mais

AULA 5 Manipulando Dados Matriciais: Grades e Imagens. 5.1 Importando Grades e Imagens Interface Simplificada

AULA 5 Manipulando Dados Matriciais: Grades e Imagens. 5.1 Importando Grades e Imagens Interface Simplificada 5.1 AULA 5 Manipulando Dados Matriciais: Grades e Imagens Nessa aula serão apresentadas algumas funcionalidades do TerraView relativas a manipulação de dados matriciais. Como dados matriciais são entendidas

Leia mais

OpenGL, GLU e GLUT. GLUT (OpenGL Utility Toolkit) OpenGL. Linguagem. OpenGL. Esqueleto de um programa em PyOpenGL

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

Leia mais

Computação Gráfica. Daniela G. Trevisan. [email protected]. http://www.joinville.udesc.br/portal/professores/dtrevisan/

Computação Gráfica. Daniela G. Trevisan. dtrevisan@joinville.udesc.br. http://www.joinville.udesc.br/portal/professores/dtrevisan/ Computação Gráfica Daniela G. Trevisan [email protected] http://www.joinville.udesc.br/portal/professores/dtrevisan/ Computação Gráfica Jogos (Quake 4) Quake 4 By: Activision, Raven Software

Leia mais

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 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

Leia mais

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 08 Utilizando Sprites e Áudio na PlayLib Prof. Augusto Baffa < [email protected]> Biblioteca Gráfica - PlayLib Conjunto de funções para criação e manipulação

Leia mais

Computação Gráfica. GLSL - Programação de Shaders Toon Mapping; Texturas

Computação Gráfica. GLSL - Programação de Shaders Toon Mapping; Texturas Computação Gráfica GLSL - Programação de Shaders Toon Mapping; Texturas António nio Ramires Fernandes - Multimédia GLSL - Programação de Shaders Resumo Toon Shading Coordenadas de Textura Lattice Stripes

Leia mais

COMPUTAÇÃO GRÁFICA. Rasterização e Preenchimento de Regiões. MARCO ANTONIO GARCIA DE CARVALHO Fevereiro de 2009. Computação Gráfica

COMPUTAÇÃO GRÁFICA. Rasterização e Preenchimento de Regiões. MARCO ANTONIO GARCIA DE CARVALHO Fevereiro de 2009. Computação Gráfica COMPUTAÇÃO GRÁFICA Rasterização e Preenchimento de Regiões Objetivos Conhecer os fundamentos da construção de linhas e círculos Conhecer o modelo scan-line modelo de sementes para preenchimento de polígonos

Leia mais

FAPESP FUNDAÇÃO DE AMPARO À PESQUISA DO ESTADO DE SÃO PAULO UNIVERSIDADE DE SÃO PAULO INSTITUTO DE MATEMÁTICA E ESTATÍSTICA (IME) GeoGrid

FAPESP FUNDAÇÃO DE AMPARO À PESQUISA DO ESTADO DE SÃO PAULO UNIVERSIDADE DE SÃO PAULO INSTITUTO DE MATEMÁTICA E ESTATÍSTICA (IME) GeoGrid FAPESP FUNDAÇÃO DE AMPARO À PESQUISA DO ESTADO DE SÃO PAULO UNIVERSIDADE DE SÃO PAULO INSTITUTO DE MATEMÁTICA E ESTATÍSTICA (IME) GeoGrid VISUALIZAÇÃO TRIDIMENSIONAL DE TERRENO Integrantes: Felipe Augusto

Leia mais

Ficha da Disciplina COMPUTAÇÃO GRÁFICA E INTERFACES. Objectivos. Docente

Ficha da Disciplina COMPUTAÇÃO GRÁFICA E INTERFACES. Objectivos. Docente Ficha da Disciplina COMPUTAÇÃO GRÁFICA E INTERFACES Apresentação da disciplina Ano lectivo 2003/2004 Carlos Carreto Nome: Computação Gráfica e Interfaces Curso: Engenharia Informática Área Científica:

Leia mais

Optimização de um Mundo Virtual

Optimização de um Mundo Virtual secção 3.2 Optimização de um Mundo Virtual Dadas as limitações impostas pela actual tecnologia, um mundo virtual que não seja cuidadosamente optimizado torna-se necessariamente demasiado lento para captar

Leia mais

Computação Gráfica OpenGl 01

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

Leia mais

Computação Gráfica. 5385: Licenciatura em Engenharia Informática. Cap. 3 Janelas e Visores. Janelas e Visores

Computação Gráfica. 5385: Licenciatura em Engenharia Informática. Cap. 3 Janelas e Visores. Janelas e Visores Computação Gráfica 5385: Licenciatura em Engenharia Informática Cap. 3 Janelas e Visores Janelas e Visores Sumário Definições domínio de imagem (ecrã) janela de ecrã domínio da cena (IR 2 ) janela visor

Leia mais

Neste tutorial irá criar uma animação simples com base num desenho do Mechanical Desktop.

Neste tutorial irá criar uma animação simples com base num desenho do Mechanical Desktop. Neste tutorial irá criar uma animação simples com base num desenho do Mechanical Desktop. Inicialize o 3D Studio VIZ. Faça duplo clique no ícone de 3D Studio VIZ Abre-se a janela da figura seguinte. Esta

Leia mais

Oficina de Construção de Páginas Web

Oficina de Construção de Páginas Web COMPETÊNCIAS BÁSICAS EM TIC NAS EB1 Oficina de Construção de Páginas Web Criação e Publicação Guião Páginas WWW com o editor do Microsoft Office Word 2003 1. Introdução. 2. Abrir uma página Web. 3. Guardar

Leia mais

UFGD FCA PROF. OMAR DANIEL BLOCO 6 CLASSIFICAÇÃO DE IMAGENS

UFGD FCA PROF. OMAR DANIEL BLOCO 6 CLASSIFICAÇÃO DE IMAGENS UFGD FCA PROF. OMAR DANIEL BLOCO 6 CLASSIFICAÇÃO DE IMAGENS Obter uma imagem temática a partir de métodos de classificação de imagens multi- espectrais 1. CLASSIFICAÇÃO POR PIXEL é o processo de extração

Leia mais

Mapeamento de Textura

Mapeamento de Textura Mapeamento de Textura Felipe Natale Munhoz [email protected] Junho de 2007 Sumário 1 Introdução 3 2 Objetivo 4 3 Tipos de Texturas 5 4 Mapeamento de Texturas em OpenGL 10 5 Referências 14 Seção 1 Introdução

Leia mais

Introdução ao OpenGL

Introdução ao OpenGL Introdução ao OpenGL 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 da apresentação

Leia mais

FERRAMENTAS DE CRIATIVIDADE MAPA MENTAL (MIND MAP)

FERRAMENTAS DE CRIATIVIDADE MAPA MENTAL (MIND MAP) FERRAMENTAS DE CRIATIVIDADE MAPA MENTAL (MIND MAP) 1. O que é Mapa Mental (Mind Map) é um diagrama usado para representar palavras, idéias, tarefas ou outros itens ligados a um conceito central e dispostos

Leia mais

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?

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

Leia mais

PlayLib Educational Game Programming Library Documentação

PlayLib Educational Game Programming Library Documentação PlayLib Educational Game Programming Library Documentação Edirlei Soares de Lima [email protected] Sumário 1 Instalação e Configuração no Visual Studio 2010... 4 2 Estrutura de um Programa... 11 3 Loop

Leia mais

Paulo Sérgio Rodrigues. Exercícios de Laboratório

Paulo Sérgio Rodrigues. Exercícios de Laboratório Paulo Sérgio Rodrigues Exercícios de Laboratório Iluminação São Bernardo do Campo, SP Abril de 2010 Iluminação Como é possível observar na Fig. 1, a imagem gerada não possui uma qualidade satisfatória.

Leia mais

Computação Gráfica. GLSL - Programação de Shaders Iluminação

Computação Gráfica. GLSL - Programação de Shaders Iluminação Computação Gráfica GLSL - Programação de Shaders Iluminação António Ramires Fernandes - Computação Gráfica 07/08 Resumo Tipos de Dados, Funções e Controle de Fluxo GLSL - Minimal GLSL - Cores GLSL - Iluminação

Leia mais

Bruno Pereira Evangelista. www.brunoevangelista.com

Bruno Pereira Evangelista. www.brunoevangelista.com Bruno Pereira Evangelista www.brunoevangelista.com 2 Introdução Shaders Pipeline de Renderização Evolução dos Shaders Como Programar Shaders Programando Shaders com XNA Ferramentas Conclusões 3 Durante

Leia mais

GraphicsLib Biblioteca Gráfica 2D. Documentação

GraphicsLib Biblioteca Gráfica 2D. Documentação GraphicsLib Biblioteca Gráfica 2D Documentação Edirlei Soares de Lima [email protected] Sumário 1 Instalação e Configuração... 4 2 Manual de Utilização... 10 2.1 Estrutura de um Programa... 10 2.2 Loop

Leia mais

Computação Gráfica. GLSL - Programação de Shaders Iluminação

Computação Gráfica. GLSL - Programação de Shaders Iluminação Computação Gráfica GLSL - Programação de Shaders Iluminação António nio Ramires Fernandes - Multimédia Resumo Tipos de Dados, Funções e Controle de Fluxo GLSL - Minimal GLSL - Cores GLSL - Iluminação Direcional

Leia mais

GeoMafra SIG Municipal

GeoMafra SIG Municipal GeoMafra SIG Municipal Nova versão do site GeoMafra Toda a informação municipal... à distância de um clique! O projecto GeoMafra constitui uma ferramenta de trabalho que visa melhorar e homogeneizar a

Leia mais

Introdução ao WebGL. Pedro Costa 2014

Introdução ao WebGL. Pedro Costa 2014 Introdução ao WebGL Pedro Costa 2014 Brevíssima Introdução ao Javascript Variáveis Tipificação solta var a; // para tudo Princípio de incerteza c = 2; c já existia? Who cares! Objectos Podem ser criados

Leia mais

Planificação Anual 2015/2016

Planificação Anual 2015/2016 Planificação Anual 015/01 CURSO: PROFISSIONAL TÉCNICO DE MULTIMÉDIA DISCIPLINA: TÉCNICAS DE MULTIMÉDIA (TM) ANO: 10.º TURMA: I 1º Período º Período 3º Período Set Out Nov Dez Jan Fev Mar Abr Mai Jun 3ª

Leia mais