3.2 - Textura em Objetos 3D
3.2 - Textura em Objetos 3D
3.2 - Textura em Objetos 3D
Apresentação
Profissionais que manipulam imagens e criam cenários cada vez mais reais têm sido muito
valorizados e demandados no mercado de trabalho moderno. Esses especialistas estão em
constante evolução e têm que acompanhar o desenvolvimento de técnicas, métodos e ferramentas
que surgem como suporte para a área da computação gráfica.
Nesse contexto, tais profissionais sabem que recursos como cores e iluminação, sozinhos, não são
capazes de refletir fielmente as imagens e os objetos do mundo real. Para isso, as texturas suprem
essa carência, sendo uma propriedade visual capaz de permitir o rápido reconhecimento de
imagens por meio da aplicação de materiais comuns e conhecidos para a maioria das pessoas.
Nesta Unidade de Aprendizagem, você vai entender o que é textura no contexto de computação
gráfica. Vai ver a importância das texturas para o realismo de imagens, cenas e objetos.
Adicionalmente, vai conhecer o sistema de coordenadas UV e aprender os dois algoritmos de
correção de texturas mais utilizados atualmente, observando a aplicação real deles numa textura
escolhida.
Bons estudos.
Nesse contexto, a Open Graphics Library (OpenGL) se tornou uma biblioteca gráfica muito útil ao
disponibilizar inúmeras funções específicas para a rápida aplicação de texturas em imagens e
objetos que fazem parte do cenário implementado.
Responda:
a) Como você criaria sua própria biblioteca de texturas, considerando cada cenário do jogo pelo
qual você está responsável?
b) A OpenGL já inclui várias técnicas sofisticadas de texturização. Cite e explique pelo menos duas
dessas técnicas que você utilizaria para proporcionar mais realismo e imersão aos cenários que
desenvolverá para o seu projeto.
Infográfico
O mapeamento de uma textura pode ser comparado à aplicação de um papel de parede em uma
superfície ou de um adesivo em um objeto. Porém, devido às particularidades de cada objeto
(cúbico, cilíndrico, esférico, etc.), a textura precisa se ajustar adequadamente a ele, de modo a
transmitir o máximo possível de um efeito realístico. Nesse sentido, existem várias técnicas de
mapeamento de texturas que utilizam algoritmos e cálculos matemáticos diferentes.
Neste Infográfico, você vai ver uma síntese das técnicas de mapeamento de texturas mais
conhecidas e aplicadas no contexto da computação gráfica.
Aponte a câmera para o
código e acesse o link do
conteúdo ou clique no
código para acessar.
Conteúdo do livro
Entender o que são texturas e como elas são usadas no mundo gráfico é fundamental para o
profissional que almeja trabalhar nessa área, tendo em vista que os processos envolvidos
enriquecem muito o trabalho final e agregam valor único ao produto desenvolvido pelo artista
gráfico.
Embora existam softwares cada vez mais robustos e completos que facilitam o trabalho do
profissional da área gráfica, assimilar os conceitos envolvidos na criação, no mapeamento e na
aplicação de texturas é fundamental para o desenvolvimento de trabalhos únicos, relevantes e de
alto nível.
No capítulo Textura em objetos 3D, base teórica desta Unidade de Aprendizagem, você vai ver
conceitos fundamentais referentes a essa área da computação gráfica. Também vai entender como
texturas são criadas e como são aplicadas aos objetos em cenas realísticas por meio de processos
que aplicam algoritmos computacionais.
Boa leitura.
COMPUTAÇÃO
GRÁFICA E
PROCESSAMENTO
DE IMAGENS
Textura em
objetos 3D
João Victor da Silva Alves
OBJETIVOS DE APRENDIZAGEM
Introdução
O rápido e crescente avanço tecnológico tem proporcionado um extraordinário
aumento do poder computacional, tanto em termos de hardware quanto de sof-
tware. A computação gráfica se beneficia diretamente desse progresso, podendo
entregar resultados cada vez mais realísticos e profissionais. As texturas têm um
papel fundamental nesse contexto, conferindo um caráter de realidade a objetos
em cenários digitalmente desenvolvidos. Em outras palavras, o profissional da
computação gráfica precisa saber trabalhar com texturas e, mais do que isso, deve
utilizar bem softwares gráficos que facilitam a produção e o desenvolvimento de
trabalhos na área. Esse é um profissional cada vez mais valorizado e demandado
no mercado de trabalho moderno.
Neste capítulo, você vai ver o que é textura e como os algoritmos computa-
cionais são utilizados para a aplicação e correção de texturas. Além disso, vai
conhecer o sistema de coordenadas UV, amplamente utilizado na aplicação digital
2 Textura em objetos 3D
de texturas. Por fim, vai estudar os dois algoritmos de correção de textura mais
conhecidos e utilizados atualmente, vendo, na prática, a aplicação deles em dois
casos distintos.
O que é textura
Na literatura, no contexto da computação gráfica, não é possível encon-
trar uma definição única e consensual do termo textura. Segundo Cohen e
Manssour (2006, p. 274), em termos gráficos, uma textura pode ser definida
como “uma imagem bidimensional que é colada à superfície de um objeto
durante o processo de desenho”. Essa analogia é interessante, uma vez que
o processo de aplicação de textura a um objeto realmente se assemelha
a colar um adesivo à sua superfície ou, ainda, colar um papel de parede à
superfície dessa parede.
Assim, estruturalmente, uma textura é representada por uma matriz que
contém as informações sobre os seus elementos, como canais de cores,
intensidade de luz e outras características. A Figura 1 mostra um exemplo
de uma textura aplicada à superfície de um objeto.
Sistema de coordenadas UV
Conforme citam Shirley et al. (2009), o processo de mapeamento de textura
não é difícil de ser implementado, desde que se entenda os sistemas de
coordenadas que envolvem todos os processos. Nesse sentido, Hearn e Baker
(2004, p. 628) mencionam que o “padrão de textura pode ser definido em uma
matriz de valores de cores ou como um procedimento que modifica as cores
dos objetos”. Assim, o “método para incorporar detalhes do objeto em uma
cena é chamado de mapeamento de textura ou mapeamento de padrões”
(HEARN; BAKER, 2004, p. 628). Os autores ainda citam que “as texturas podem
ser definidas como padrões unidimensionais, bidimensionais ou tridimensio-
nais, e qualquer especificação de textura é chamada de espaço de texturas,
[sendo] referenciado com coordenadas de textura no intervalo de 0 a 1,0”
(HEARN; BAKER, 2004, p. 628).
Sucintamente, no mapeamento de textura, busca-se minimizar a sua
distorção por meio da curva geratriz da superfície. Como as coordenadas da
textura a ser aplicada são normalizadas de modo a estarem no intervalo de
[0, 1], “uma das estratégias de minimizar a distorção é reparametrizar pelo
comprimento de arco a curva poligonal que gera a superfície e depois tomar
uma das coordenadas de textura do mesmo comprimento de cada aresta
correspondente à poligonal” (CASTRO, 2004, p. 22). Tais cálculos são comple-
xos, porém já estão automatizados nos softwares gráficos mais utilizados
atualmente. Como exemplo, a Figura 2 mostra uma imagem utilizada como
textura mapeada utilizando coordenadas UV.
4 Textura em objetos 3D
Referências
AZEVEDO, E.; CONCI, A. Computação gráfica: teoria e prática. Rio de Janeiro: Elsevier, 2003.
CASTRO, T. A. L. Realidade virtual e engenharia civil: detecção de interferências entre
projetos de edificações em 3D. 2004. Dissertação (Mestrado em Engenharia de Pro-
dução) – Universidade Federal de Santa Catarina, Florianópolis, 2004. Disponível em:
https://repositorio.ufsc.br/bitstream/handle/123456789/87134/224593.pdf?sequence=1.
Acesso em: 7 jun. 2022.
COHEN, M.; MANSSOUR, I. H. OpenGL: uma abordagem prática e objetiva. São Paulo:
Novatec, 2006.
CUNHA, L. M. Reconhecimento de adulterações em imagens digitais: uma abordagem
passiva. 2016. Dissertação (Mestrado em Informática) – Universidade Federal da Pa-
raíba, João Pessoa, 2016. Disponível em: https://repositorio.ufpb.br/jspui/bitstream/
tede/9270/2/arquivototal.pdf. Acesso em: 7 jun. 2022.
DOURADO, W. B. Avaliação de técnicas de interpolação de imagens digitais. 2014.
Dissertação (Mestrado em Matemática Aplicada e Computacional) – Universidade
Estadual Paulista, Presidente Prudente, 2014. Disponível em: https://repositorio.
unesp.br/bitstream/handle/11449/115892/000806982.pdf?sequence=1. Acesso em:
7 jun. 2022.
HEARN, D.; BAKER, M. P. Computer graphics with OpenGL. Upper Saddle River: Pearson
Prentice Hall, 2004.
10 Textura em objetos 3D
Confira, nesta Dica do Professor, mais detalhes sobre essa biblioteca e a sua importância para a
computação gráfica.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Exercícios
1) A criação de mapas de texturas não é uma tarefa trivial, pois envolve uma série de cálculos
complexos. Nesse sentido, softwares gráficos utilizam sofisticados algoritmos e técnicas para
desenvolver e aplicar texturização em superfícies de objetos.
Leia as alternativas a seguir e marque a correta em relação aos algoritmos para mapeamento
de texturas.
A) A maioria dos softwares gráficos modernos não implementa algoritmos clássicos para o
mapeamento de texturas, sendo necessário implementá-los manualmente ou adquiri-los de
terceiros.
C) Uma pequena parcela dos softwares gráficos modernos implementa algoritmos clássicos para
o mapeamento de texturas, sendo necessário implementá-los manualmente ou adquiri-los de
terceiros.
D) Devido aos altos custos de hardware e software, a maioria dos programas gráficos modernos
não implementa algoritmos clássicos para o mapeamento de texturas, sendo necessário
implementá-los manualmente ou adquiri-los de terceiros.
E) A maioria dos softwares gráficos modernos não implementa algoritmos clássicos para o
mapeamento de texturas por uma questão estratégica de propaganda e marketing, sendo,
portanto, necessário implementá-los manualmente ou adquiri-los de terceiros.
2) As técnicas de mapeamento de texturas se tornam cada vez mais eficazes à medida que o
processamento gráfico dos computadores aumenta. Nesse sentido, os softwares gráficos já
implementam nativamente diversas delas, cada uma com suas especificidades e seus
resultados distintos. Veja a seguir a definição de uma técnica clássica de texturização e,
entre as alternativas, escolha a que aponta corretamente o nome dessa técnica.
É um tipo de mapeamento de textura que aplica a simulação de rugosidades nas superfícies dos
objetos. Nessa técnica, há a variação da componente normal da superfície em diferentes pontos,
produzindo ondulações e depressões.
A) Multitexturing.
B) Environment mapping.
C) Bump mapping.
D) Mipmapping.
E) Shadows.
3) No contexto da computação gráfica, uma das definições mais básicas é a que mostra que
uma imagem é representada por uma matriz de pixels. Ao aplicar diversas técnicas para os
mapeamentos de texturas, os softwares também precisam gerar estruturas de dados
próprias, que podem ser manipuladas digitalmente.
Nesse sentido, assinale a seguir a alternativa que indica o sistema matemático básico
utilizado para o mapeamento de textura.
B) Sistema de bits.
C) Sistema de bytes.
D) Sistema de pixels.
E) Sistema de lúmens.
Analise as alternativas a seguir e escolha a que aponta uma dessas ferramentas mais
conhecidas e utilizadas atualmente.
A) Environment mapping.
B) Bump map.
C) Shadow mapping.
D) OpenGL.
E) Mipmapping.
5) A aplicação de texturas em superfícies de objetos utilizados em cenas de filmes e jogos
digitais, por exemplo, possibilitou o aumento impressionante do realismo ao público final.
Por isso, o profissional da área da computação gráfica deve conhecer as mais renomadas
ferramentas utilizadas atualmente para a criação desses cenários, aprendendo a utilizar seus vários
componentes para a criação e a edição de tarefas específicas, como no caso da texturização de
objetos para as cenas.
Confira, Na Prática, as técnicas que a maioria dos softwares para computação gráfica utiliza nos
mapeamentos de texturas em objetos que serão parte de cenas em jogos digitais.
Aponte a câmera para o
código e acesse o link do
conteúdo ou clique no
código para acessar.
Saiba +
Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professor:
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.