4 Impostores com Relevo
|
|
|
- Carolina Bergmann Fagundes
- 8 Há anos
- Visualizações:
Transcrição
1 63 4 Impostores com Relevo I just wish... I wish I knew what I'm supposed to do. That's all. I just wish I knew. (The Matrix) 4.1 Introdução Os objetos modelados por texturas com relevo, por corrigirem o problema de paralaxe, possuem um tempo de vida extremamente maior do que objetos modelados por simples sprites. Entretanto, como foi visto na seção 3.4, apenas uma textura não é suficiente para representar um objeto por inteiro. Ao representar um objeto através de um paralelepípedo de texturas com relevo, conforme descrito em 3.4.3, tem-se uma limitação do tipo de objetos possíveis de serem representados. A figura 4.1 mostra um exemplo de topologia extrapolada e incorreta para tal método. (a) (b) figura 4.1 A parte vermelha do objeto representado em (a) não pode ser vista utilizando o método proposto em Todas as 6 texturas com relevo são iguais ao mapa de normais e profundidade representado em (b). De forma geral, partes de objetos que não são visíveis por nenhuma das 6 vistas ortogonais, desaparecerão na sua representação por texturas com relevo. Tal caso se dará com frequência em objetos com características côncavas. A figura 4.2 (d) mostra um personagem com os polígonos que não são alcançados através deste método.
2 64 (a) (b) (c) (d) figura 4.2 Nas vistas ortogonais muitos dos polígonos do objeto não podem ser vistos e são incorretamente interpolados pelo mapeamento de texturas com relevo padrão para uma posição de câmera, como a de (a). Em (d) mostra-se quais são estes polígonos: de um total de 768 faces, 107 estão dentro deste grupo. A idéia inicial dos impostores com relevo consiste em representar um objeto através da textura com relevo correta, para a posição corrente do observador. Para cada movimento de câmera ou do objeto, verifica-se se esta textura ainda é válida. Para fazer este teste, desenvolve-se uma métrica, no presente trabalho, onde se estima o erro a partir da quantidade de texels que se devem interpolar, escolhendose para isto um texel especial, denominado de ponto crítico. Esta métrica está detalhadamente discutida no capítulo 5 desta tese. Diferentemente da modelagem apresentada em 3.4.3, o objeto é representado por apenas um polígono e uma textura com relevo para cada instante. Quando se verifica que uma textura com relevo está prestes a se tornar obsoleta, o sistema proposto gera uma nova textura, tendo em conta os dados correntes da câmera e do objeto, procurando por outro lado não prejudicar a visualização em andamento dos demais elementos da cena. A criação destas novas texturas pode ser feita por software (CPU) ou por hardware (GPU). Gerá-la por software pode ser conveniente para sintetizar objetos em tempo real com algoritmos pouco adequados para a GPU ou para explorar e aproveitar melhor o tempo livre existente na CPU. Gerar as texturas com relevo por GPU pode servir para se fazer uma abordagem de renderização distribuída para placas gráficas.
3 65 Atualizar as texturas com relevo equivale a calcular um novo mapa de profundidade, um mapa de normais e um mapa de textura, dizendo a cor de cada texel. Na seção 8.8 discute-se com mais detalhes como isto é implementado. Excetuando os casos de objetos com transparência, este método não possui restrições quanto ao tipo de objeto geométrico capaz de ser representado. Entretanto, modelos com geometria complexa fazem com que o tempo de validade da textura seja menor do que em objetos com topologia mais simples (ver figura 8.11). Este fato intrigante está explicado na seção 8.8. A figura 4.3 mostra diversas regiões onde, para cada uma, um único impostor é suficiente para representar o objeto. No caso de se fazer o cálculo da nova textura com relevo por software, pode-se utilizar modelos de visualização impossíveis de serem implementados por hardware, tais como o ray-tracing, que exige recursão na sua implementação, ou volume-rendering, que exige um volume grande de dados. Também pode servir para tratar objetos cuja natureza geométrica seja inadequada para a GPU que se dispõe (objetos volumétricos, por exemplo). figura 4.3 Cada cor representa uma região onde uma mesma textura com relevo pode ser utilizada. Através da ilustração, pode-se notar que o tempo de vida de cada textura deste tipo é muito maior que o tempo de vida de um sprite. Quanto à classificação apresentada na seção 2.3, pode-se dizer a respeito aos impostores com relevo que:
4 66 a) A autoria que os impostores requerem é equivalente às dos demais elementos geométricos da cena, já que o usuário não interfere no processo de criação e atualização das texturas com relevo. Pode-se, no entanto, permitir que alguns parâmetros sejam controlados: resolução máxima da textura, condição para que um objeto seja transformado num impostor com relevo, constante de erro tolerada pela métrica, algoritmo de visualização por software a ser usado para o objeto, etc. b) Os graus de liberdade para objetos deste tipo correspondem a cinco, ou seja, permite-se um movimento livre pela cena, bem como uma variação do vetor de azimute e elevação do observador em relação ao mesmo. c) A mudança da posição do observador é contínua para qualquer região do espaço, exceto para o caso do observador entrar na bounding box do elemento. Neste caso é necessário tratá-lo como geometria e não mais como textura com relevo. d) A quantidade de amostras para visualizar o objeto corretamente se resume a uma textura para cada instante. Entretanto, conforme se apresenta no capítulo 8, havendo um gerenciamento de cache de texturas com relevo ou um sistema de previsão para gerar texturas futuras, mais de uma textura com relevo pode estar presente na memória. e) Pode-se dizer que os impostores com relevo são do tipo View Dependent Texture Mapping e portanto estão dentro da área de modelagem baseada em imagens (image-based modeling). No entanto, a extração dos dados geométricos é feita de forma automática e transparente para o usuário, comportando-se, neste caso, como um objeto puramente imagem. f) A variável tempo pode vir a ser inserida nos impostores com relevo, sendo necessária uma extensão da pesquisa neste sentido. Para tanto, deve-se ter uma sequência de texturas com relevo, que representem o objeto animado. Uma discussão mais detalhada sobre esta possibilidade pode ser encontrada no capítulo 9 e nas páginas de Oliveira (2000a) Multi-resolução para Impostores com relevo Em algumas situações pode ser conveniente diminuir a resolução original do impostor com relevo, de forma a não ter que calcular pixels que são
5 67 posteriormente desperdiçados por problemas de amostragem. A figura 4.4 mostra um objeto sendo representado por um impostor que possui uma resolução de 256 x 256, sendo projetado numa tela na resolução de 800 x 600. Para a câmera em questão, o objeto ocupa aproximadamente 120 x 120 pixels da tela. Assim sendo, desperdiça-se tempo ao realizar o warping para todos os texels da textura com relevo original. É conveniente, portanto, reescalar esta textura. figura 4.4 Neste exemplo, dos texels do impostor, apenas estão sendo aproveitados para a imagem final. Assim sendo, ao se fazer o warping da imagem no tamanho original, se está desperdiçando mais de ¾ do tempo de processamento com texels que não são vistos. Para realizar este reescalonamento, é possível testar se um texel do impostor se tornou maior que um pixel da imagem gerada do observador, realizando-se o seguinte cálculo (ilustrado na figura 4.5): β impostor >K.β tela (4-1) Sendo que FOV FOV β impostor = e β tela = (4-2) resolução _ impostor resolução _ tela
6 68 A constante K permite que se coloque uma margem de erro, permitindo que o texel do impostor possa ser um pouco maior do que o pixel da tela, uma vez que a diferença pode ser imperceptível. figura 4.5 β impostor deve ser obtido a cada frame, para determinar se o impostor se tornou obsoleto em relação à resolução da tela e β tela apenas em caso de alteração do FOV ou da resolução da imagem. 4.2 Discussão Neste capítulo, após uma breve discussão sobre as possíveis formas de se representar modelos de objetos através de imagens, introduziu-se o conceito de impostores com relevo, como uma extensão na capacidade de modelagem através de texturas com relevo. Este método, diferentemente que a maioria das técnicas de modelagem baseada em imagem e da própria técnica texturas com relevo, apresentada inicialmente por Oliveira (1999), mantém dependência da geometria do objeto. Esta dependência se origina do próprio conceito de impostores, que consiste numa atualização dinâmica da textura. No capítulo seguinte apresenta-se uma forma de medir quando estas atualizações são necessárias. Quanto mais acurada for esta medida, menos texturas devem ser geradas e, portanto, mais eficiente é o impostor com relevo.
Introdução ao Processamento e Síntese de imagens -Linhas e superfícies escondidas
Introdução ao Processamento e Síntese de imagens -Linhas e superfícies escondidas Júlio Kiyoshi Hasegawa 26 Fontes: Rogers, D. F. Procedural Elements for Computer Graphics Introdução Linhas e superfícies
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
4 Processamento Paralelo
4 Processamento Paralelo Como apresentado no Capítulo 3, o algoritmo de mapeamento de textura com relevo é divido em cinco passos: reinicialização de recursos, configuração da câmera, cálculo de lookup
Tópicos Especiais em Engenharia de Software (Jogos II)
Tópicos Especiais em Engenharia de Software (Jogos II) Aula 02 Iluminação, Materiais e Shaders Edirlei Soares de Lima Unity 3D: Graphics A Unity oferece diversos elementos para a
PEF 5743 Computação Gráfica Aplicada à Engenharia de Estruturas
PEF 5743 Computação Gráfica Aplicada à Engenharia de Estruturas Prof. Dr. Rodrigo Provasi e-mail: [email protected] Sala 09 LEM Prédio de Engenharia Civil Iluminação Para a compreensão do funcionamento da
Teste de Software. Planejamento de Teste. Rosemary Silveira Filgueiras Melo
Teste de Software Planejamento de Teste Rosemary Silveira Filgueiras Melo [email protected] 1 Agenda Atividades de Teste Conceitos importante no Contexto de Teste Abordagem de Teste 2 Atividades de
Processamento de áudio em tempo real utilizando dispositivos não convencionais:
Processamento de áudio em tempo real utilizando dispositivos não convencionais: Processamento paralelo com Pure Data e GPU. André Jucovsky Bianchi [email protected] Departamento de Ciência da Computação Instituto
Geração Procedural de Terrenos em GPU
Geração Procedural de Terrenos em GPU Felipe Gomes Sampaio Universidade Federal de Juiz de Fora Departamento de Ciência da Computação Orientadora: Jesuliana Nascimento Ulysses Agenda Introdução GPU Terrenos
3 Fundamentos. 3.1 Pipeline de renderização em OpenGL
3 Fundamentos Este capítulo apresenta uma visão geral do pipeline de renderização da versão 4.0 da API OpenGL, tendo como foco os recém-introduzidos estágios de tesselação. Em seguida, é realizada uma
Por favor, notar que o PRO100 V5 exige uma placa gráfica do tipo: NVidia GeForce 9600, ATI Radeon X 1700 ou mais recentes
Pro100 V5 1.1. Recursos Houve mudanças radicais na nova versão do Pro100, o PRO100 V5. A maioria dos melhoramentos dizem respeito ao mecanismo de visualização e exibição, embora haja outros recursos também
Computação Gráfica - 09
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica - 9 [email protected] www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav Objetos
Mapeamento de Texturas
Mapeamento de Texturas André Tavares da Silva [email protected] Baseado no material de Rosalee Wolfe (Siggraph Education) Pesquisa recente https://www.youtube.com/watch?v=kht82-kyhrw Mapeamento de textura
2 Algoritmos de Visibilidade
2 Algoritmos de Visibilidade Este capítulo vai fazer uma rápida revisão em cima dos principais algoritmos de determinação de visibilidade, classificando-os segundo [14]. Também será identificada no pipeline
Computação Gráfica - 09
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica - 9 [email protected] www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav Objetos
Resumo. Ray Tracing. Introdução. Ray Casting Básico. Idéia
Resumo Leandro Paganotti Brazil Danilo Medeiros Eler Rosane Minghim Computação Gráfica ICMC USP 2010 Introdução Ray Casting Básico Intersecção Raio-Cena Caminhos de Reflexão e Refração Ray-Tracing Tree
Rendering de Polígonos. Determinação de Superfícies Visíveis. Back Face Culling. Back Face Culling. Back Face Culling. Back Face Culling.
Determinação de Superfícies Visíveis M.C.F. de Oliveira Fontes: Hearn & Baker, Cap. 9 Curso CG, University of Leeds (Ken Brodlie): http://www.comp.leeds.ac.uk/kwb/gi21/lectures.html Rendering de Polígonos
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
Computação Gráfica - 12
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica - 12 [email protected] www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav Realismo
Aplicação de Tags em Objetos de Sistemas de Visualização em Tempo Real
Fundamentos de Computação Gráfica Aplicação de Tags em Objetos de Sistemas de Visualização em Tempo Real Renato Deris Prado Tópicos principais 1. Introdução e Objetivos Sistemas de visualização em tempo
4 Implementação em CPU
4 Implementação em CPU Este capítulo tem por finalidade avaliar os algoritmos e técnicas de aceleração levantadas anteriormente, a fim de obter a melhor combinação entre eles avaliando o desempenho conseguido
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
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. Representação e Modelagem
Computação Gráfica Representação e Modelagem Professora: Sheila Cáceres Baseado nos slides da Prof. Soraia Musse Modelagem Área da Computação Gráfica que estuda a criação de modelos dos objetos reais.
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
Lista de exercícios. 4) Defina o conceito de função de eficiência luminosa. (Victor)
Instituto de Computação Pós-graduação em Ciência da Computação Disciplina: Computação Gráfica 1 semestre de 2011. Prof.: Anselmo Montenegro Lista de exercícios Grupo I - Cores 1) Explique em detalhes o
O Problema de Visibilidade. Computação Gráfica Recorte. Onde Acontece? O que é Recorte? Renato Ferreira
O Problema de Visibilidade Computação Gráfica Recorte Renato Ferreira Numa cena tri-dimensional, normalmente não é possível ver todas as superfícies de todos os objetos Queremos descartar objetos ou partes
ACELERE SEU RENDER NO MAYA 2. neste artigo podem ser feitos durante as fases de modelagem e iluminação/texturização.
M aya por Gustavo L. Braga ACELERE SEU RENDER NO MAYA 2 Figura 1 - Cena exemplo sem nenhum tipo de otimização. INTRODUÇÃO A correta utilização do render é uma grande preocupação nos estúdios de animação
Computação Gráfica. Agostinho Brito. Departamento de Engenharia da Computação e Automação Universidade Federal do Rio Grande do Norte
Computação Gráfica Agostinho Brito Departamento de Engenharia da Computação e Automação Universidade Federal do Rio Grande do Norte 30 de julho de 2015 O que é computação gráfica Entrada Saída IMAGEM MODELO
Computação Gráfica - 11
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica - 11 Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav
PROJETO DE BANCO DE DADOS
UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ CIÊNCIA DA COMPUTAÇÃO BANCO DE DADOS I PROJETO DE BANCO DE DADOS Profº Erinaldo Sanches Nascimento Objetivos Discutir o ciclo de vida do sistema de
O que é CG?? Soraia Raupp Musse
O que é CG?? Soraia Raupp Musse Processamento Gráfico Modelagem Multimídia RV Usuário Visão Modelos Gráfico Tempo Animação Vídeo Imagens Processamento de Imagens O que NÃO é CG?? Processamento de Imagens
Remoção de Superfícies Escondidas
INF 66 Computação Gráfica Interativa Eliminação de Superfícies Escondidas; Anti-Aliasing Alberto B. Raposo [email protected] http://www.tecgraf.puc-rio.br/~abraposo/inf66/index.htm Remoção de
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
Visualizador de animações 3D com suporte ao formato arquivos FBX em Objective-C++
Visualizador de animações 3D com suporte ao formato arquivos FBX em Objective-C++ Felipe Silvino Pereira Prof. Paulo César Rodacki Gomes, Dr. - Orientador Roteiro da Apresentação Introdução Objetivos do
INFRAESTRUTURA NECESSÁRIA...
VISÃO DO SISTEMA Sumário 1 INTRODUÇÃO... 2 2 ITSCAM PRO... 3 2.1. 2.2. ARQUITETURA DO SISTEMA... 3 PRINCIPAIS FUNCIONALIDADES E TELAS... 4 3 INFRAESTRUTURA NECESSÁRIA... 11 3.1. 3.2. 3.3. 3.4. INFRAESTRUTURA
SSC643 -Avaliação de Desempenho de Sistemas Computacionais Sarita Mazzini Bruschi
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC643 -Avaliação de Desempenho de Sistemas Computacionais Sarita Mazzini Bruschi Material
Durante a evolução das arquiteturas de computadores e principalmente dos Sistemas Operacionais, muitas tecnologias tiveram que ser aprimoradas para
UM ESTUDO SOBRE O MECANISMO DE PAGINAÇÃO DE MEMÓRIA E OS ALGORITMOS DE SUBSTITUIÇÃO DE PÁGINAS FIFO E LRU Fernando Sales Ferreira, [email protected] William Antônio Faria Da Silva, [email protected]
