Buscar

Técnicas de Renderização

Prévia do material em texto

DESCRIÇÃO
Apresentação dos conceitos e aplicações de técnicas de renderização com abordagem das
representações de modelagem de objetos, algoritmos de rasterização, aspectos de iluminação,
além de exemplos práticos com a utilização do software TinkerCad.
PROPÓSITO
Compreender os conceitos e as aplicações das técnicas de renderização fornecerá a base de
conhecimento para o profissional que deseja trabalhar com a área de computação gráfica,
modelando objetos e empregando algoritmos de rasterização.
PREPARAÇÃO
Para executar os passos apresentados nos exemplos, você vai precisar criar uma conta no
TinkerCad.
OBJETIVOS
MÓDULO 1
Descrever as representações para fazer modelagem de objetos
MÓDULO 2
Listar os aspectos relacionados às técnicas de rasterização
MÓDULO 3
Caracterizar os algoritmos de iluminação
INTRODUÇÃO
O avanço da tecnologia computacional, tanto no hardware como nos algoritmos, está
proporcionando a cada dia novas experiências que aumentam a sensação de realismo na
interação com jogos eletrônicos e filmes, por exemplo.
Isso ocorre devido à demanda crescente de novos produtos e soluções que sejam mais
confiáveis, estejam disponíveis mais rapidamente e que sejam mais baratas.
Nesse cenário, a computação gráfica evoluiu ao longo dos anos desenvolvendo técnicas para
viabilizar soluções práticas que encontram aplicações em diversas situações, desde as de
entretenimento, nas engenharias (civil, automobilística, aeronáutica), na medicina e em tantas
outras áreas.
O conhecimento dos conceitos fundamentais de computação gráfica permite que o estudante
possa ir além de um consumidor de soluções para propor soluções. Nesse sentido, é esperado
que faça parte dessa formação:
Compreender os tipos de modelagem geométrica;
Estudar as operações booleanas para gerar objetos geométricos;
Aprender sobre a exibição de modelos sólidos; e
Conhecer os conceitos e algoritmos de iluminação.
Ao longo do texto, vamos apresentar conceitos relacionados a cada um desses pontos. Vamos
explorar ainda o aplicativo TinkerCad para modelarmos figuras geométricas tridimensionais.
MÓDULO 1
 Descrever as representações para fazer modelagem de objetos
REPRESENTAÇÃO ARAMADA OU POR
WIREFRAME
A representação aramada, também conhecida por modelo wireframe, é a representação visual
de um objeto físico tridimensional através de um conjunto de arestas que demarcam as bordas do
objeto.
Isso significa que para representar um objeto através da representação aramada precisamos
especificar cada aresta do objeto físico (BUSS, 2003). Veja um exemplo de figura representada
por aramada a seguir.
Imagem: Sérgio Assunção Monteiro
 Exemplo da representação por aramada.
No caso, tivemos que especificar as coordenadas dos vértices, como podemos ver na tabela a
seguir.
Número do vértice Coordenadas (X,Y,Z)
1 (1, -1, -1)
2 (1, 1, -1)
3 (-1, 1, -1)
4 (-1, -1, -1)
5 (1, -1, 1)
6 (1, 1, 1)
7 (-1, -1, 1)
8 (-1, 1, 1)
 Atenção! Para visualização completa da tabela utilize a rolagem horizontal
 Tabela: Coordenadas dos vértices.
Já a relação entre as arestas é dada na próxima tabela.
Aresta Vértice origem Vértice destino
1 1 2
2 1 3
3 1 5
4 2 4
5 2 7
6 3 4
7 3 6
8 4 8
9 5 6
10 5 7
11 6 8
12 7 8
 Atenção! Para visualização completa da tabela utilize a rolagem horizontal
 Tabela: Relações entre os vértices.
Como podemos ver no exemplo, o objeto foi desenhado através de linhas que fazem a conexão
local de cada borda. Há vantagens e desvantagens em modelos representados por wireframe:
Vantagens
Permite a construção e manipulação tanto de sólidos como de superfícies sólidas.
Por se tratar de uma representação simples, ela possui como característica ser veloz na
exibição dos modelos.

Desvantagens
Ambiguidade na representação de sólidos, o que significa que na exibição do modelo
podemos ter mais de uma interpretação.
Operações como as de determinação de massa e de volume, por exemplo, são bastante
difíceis com esse modelo.
REPRESENTAÇÃO POR FACES (WINGED
EDGE)
Nessa técnica, um modelo é definido por um conjunto de polígonos que delimitam uma região
fechada do espaço. Na figura a seguir, apresentamos um exemplo de uma subdivisão plana.
Imagem: ANDRADE NETO; GUEDES, 2006, p. 3.
 Exemplo de representação winged edge.
Podemos identificar na figura que:
As arestas são representadas pelo conjunto A = [a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11].
Os vértices são representados pelo conjunto V = [v1, v2, v3, v4, v5, v6, v7, v8].
As faces são representadas pelo conjunto F = [f1, f2, f3, f4, f5].
 SAIBA MAIS
Polígonos são figuras geométricas planas fechadas, formadas por segmentos de retas,
denominados lados dos polígonos. Se todos os lados forem iguais, diz-se que é um polígono
regular.
As relações entre vértices, arestas e faces são apresentadas na figura a seguir.
Imagem: ANDRADE NETO; GUEDES, 2006, p. 11.
 Representação parcial de uma winged edge.
Na figura, temos a seguinte interpretação:
Ai representa a aresta – por exemplo, a aresta a1.
V1 e V2 representam os vértices de uma aresta – por exemplo, a aresta a2 é definida pelos
vértices v2 e v3.
F1 e F2 são as faces adjacentes a uma aresta – por exemplo, as faces f2 e f5 são adjacentes à
aresta a3.
A1, A2, A3 e A4 representam as arestas adjacentes a uma determinada aresta. Por exemplo, as
arestas a8, a1, a11 e a3 são adjacentes à aresta a2.
As faces – que são polígonos – definem o interior do modelo. O objeto obtido por essa
representação é chamado de poliedro. As faces, portanto, podem ser representadas através de
uma lista cujos elementos são os vértices.
Os vértices, por sua vez, podem ser representados por suas coordenadas explícitas, ou como um
ponteiro para uma lista de vértices que armazenem detalhes sobre os vértices. A ideia é que a
representação pela estrutura de dados contenha informações sobre a topologia da figura.
REPRESENTAÇÃO POR QUADTREES
Quadtrees são árvores usadas para armazenar dados de figuras em um espaço bidimensional
(BUSS, 2003). A principal característica dessa árvore é que cada nó tem no máximo quatro filhos.
Para construir uma quadtree, devemos realizar as seguintes etapas:
1
Dividir o espaço bidimensional em que a figura está em quatro caixas.
Caso uma caixa contenha um ou mais pontos, devemos criar um objeto filho, armazenando nele o
espaço bidimensional da caixa.
2
3
Caso uma caixa não contenha ponto algum, o processo de criação de nós filhos para a caixa deve
ser interrompido.
O processo deve ser repetido até que o processo de criação de nós filhos seja interrompido para
todas as caixas.
4
Na figura a seguir, apresentamos um exemplo de aplicação de uma quadtree para armazenar uma
figura bidimensional.
Imagem: Wojciech Muła / Wikimedia Commons / Domínio público adaptado por Heloise Godinho
 Exemplo de quadtree.
Devemos perceber na figura Exemplo de quadtree que a imagem da esquerda é dividida em 4
caixas. Na quadtree, essas caixas estão representadas pela numeração que corresponde às
regiões demarcadas da figura.
No caso da região 1, não foi necessário fazer ramificações na caixa 1 da quadtree. No caso da
região 3, tivemos que ramificar a respectiva caixa na quadtree de modo a representá-la
adequadamente.
Algumas das aplicações das quadtrees são:
COMPRESSÃO DE IMAGENS
javascript:void(0)
javascript:void(0)
As informações sobre cores de um objeto são armazenadas em um de seus filhos (quanto maior
for a profundidade da árvore, mais detalhes serão exibidos na imagem).
BUSCA DE NÓS EM UMA ÁREA BIDIMENSIONAL
Utilizada para encontrar o ponto mais próximo de determinadas coordenadas.
REPRESENTAÇÃO POR OCTREES
Uma octree é definida como uma estrutura de dados em árvore na qual cada nó interno está
associado a exatamente oito filhos (BUSS, 2003). Elas são utilizadas para representar figuras
tridimensionais através de partições, subdividindo-as recursivamente em oito octantes. O
comportamento das octrees é semelhanteao das quadtrees.
Na figura a seguir, apresentamos um exemplo de uma octree.
Imagem: WhiteTimberwolf / Wikimedia Commons / CC BY-SA 3.0
 Exemplo de octree.
No segundo nível da árvore, representamos a primeira partição em oito octantes. Em seguida,
precisamos continuar a fazer partições para cada nó até a precisão que desejarmos da
representação da figura original.
javascript:void(0)
javascript:void(0)
As octrees são utilizadas em diversas aplicações. Entre elas, podemos destacar:
Renderização detalhada em computação gráfica 3D.
Indexação espacial.
Busca por nós vizinhos mais próximos.
Detecção de colisão eficiente em três dimensões.
Análise de elementos finitos.
REPRESENTAÇÃO POR BSP
O BSP é uma representação através do particionamento de espaço binário (BUSS, 2003). Ele é
implementado para subdividir recursivamente um espaço em dois conjuntos convexos usando
hiperplanos como partições.
 ATENÇÃO
Uma região é dita convexa quando qualquer segmento de reta que tenha as extremidades dentro
da região tem todos os seus pontos dentro da região.
Esse processo de subdivisão dá origem à representação de objetos dentro do espaço na forma de
uma estrutura de dados em árvore conhecida como árvore BSP. Na figura a seguir, apresentamos
um exemplo de BSP.
Imagem: Sérgio Assunção Monteiro
 Exemplo de BSP.
A estrutura de uma árvore BSP permite informações espaciais sobre os objetos em uma cena que
são úteis na renderização, em que objetos são ordenados da frente para trás em relação a uma
visualização em determinado local.
O particionamento de espaço binário é tratado como um processo genérico de dividir
recursivamente uma cena em duas até que o particionamento satisfaça um ou mais requisitos.
Pode ser visto como uma generalização de outras estruturas de árvores espaciais, como árvores
octrees. As árvores BSP são usadas na detecção de colisões em videogames 3D e robótica, no
traçado de raios (ray tracing) e tratamento de cenas espaciais complexas. Entre as desvantagens
do BSP estão:
A geração de uma árvore BSP pode ser demorada.
O BSP não resolve o problema da determinação da superfície visível.
TÉCNICAS DE MODELAGEM GEOMÉTRICA
MATEMÁTICA (EFEITOS NATURAIS)
O método matemático de modelagem usa uma descrição matemática e algoritmos para gerar um
objeto. Ela pode ser feita com o auxílio de programas de computador. Nesse caso, temos a
chamada Engenharia Assistida por Computador (CAE).
Trata-se de um assunto que compreende o Design Auxiliado por Computador (CAD) e a
Manufatura Auxiliada por Computador (CAM).
Foto: Shutterstock.com
 Design Auxiliado por Computador.
No caso do CAD, ele é subdividido em:
Análise de elementos finitos.
Desenho auxiliado por computador.
Modelagem geométrica por computador.
A ideia é de representar a matemática da geometria de um objeto usando software. O modelo
geométrico precisa conter a descrição da forma do objeto modelado.
As formas geométricas são descritas por superfícies. A modelagem geométrica por computador
usa curvas para controlar as superfícies do objeto, pois são fáceis de manipular. As curvas podem
ser construídas através de:
Funções analíticas.
Um conjunto de pontos.
Outras curvas e superfícies.
 VOCÊ SABIA
Existem vários softwares que permitem que a descrição matemática do objeto seja exibida como
uma imagem no monitor, como as aplicações TinkerCAD, FreeCAD, BlocksCAD, Creo, Fusion
360°, Solidworks, AutoCAD, CATIA, OpenSCAD e Rhino.
Para criar um modelo geométrico de um objeto em uma aplicação CAD, devemos seguir estes
passos:
Criar objetos geométricos básicos através de pontos, linhas e círculos.

Usar comandos para realizar operações geométricas, tais como escalonamento e rotações para
transformar esses elementos geométricos.

Combinar os vários elementos do objeto para formar o modelo geométrico final.
Algumas técnicas empregadas para modelagem geométrica, segundo BUSS (2003), estão
descritas a seguir.
INSTANCIAMENTO DE PRIMITIVAS
COMBINAÇÃO DE OBJETOS
VARREDURA
VARREDURA POR EXTRUSÃO
VARREDURA ROTACIONAL
INSTANCIAMENTO DE PRIMITIVAS
A partir de um conjunto de formatos sólidos primitivos, podemos gerar uma família de sólidos que
variam em relação a alguns parâmetros. Além disso, é possível criar objetos a partir de
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps11
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps11
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps12
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps12
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps13
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps13
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps13
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps13
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps13
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps14
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps14
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps15
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps15
transformações geométricas aplicadas nas primitivas.
COMBINAÇÃO DE OBJETOS
Essa técnica é empregada para criar objetos a partir da combinação de objetos conhecidos, além
de aplicar as operações booleanas de união, intersecção e diferença para combinar objetos. É
importante destacar que a aplicação de operações booleanas pode gerar representações inválidas
de objetos geométricos.
VARREDURA
O objeto sólido é representado por uma região e por um caminho diretor, então o sólido é gerado
pela varredura dessa região através do caminho diretor.
VARREDURA POR EXTRUSÃO
O objeto é obtido pela translação (deslocamento) por determinada distância em relação a uma
superfície específica através de um vetor.
VARREDURA ROTACIONAL
Descrevemos a superfície do objeto por uma superfície, ou curva, que gira em torno de um eixo.
TÉCNICAS DE MODELAGEM GEOMÉTRICA
AUTOMÁTICA (SCANNERS 3D)
A modelagem automática é uma técnica sofisticada e rápida. Ela faz uso de equipamentos
especiais como scanners 3D, nos quais é possível obter o modelo tridimensional de quase todos
os objetos.
SCANNERS 3D
Um scanner 3D é um instrumento que permite reconstruções sem contato, mesmo de
objetos de geometrias complexas. Essas reconstruções são geradas na forma de modelos
3D poligonais.
Essa técnica possui interessantes aplicações, como a reconstrução e otimização de componentes.
No caso da reconstrução poligonal realizada por um scanner 3D, pode ser usado como base para
um procedimento denominado engenharia reversa, que permite reconstruir o modelo CAD do
componente que estamos analisando. Isso é muito útil para refazer as especificações de um
projeto original, quando existem limitações de acesso às especificações originais. A forma mais
efetiva dessa técnica é a digitalização 3D usando scanners ópticos 3D sem contato.
SCANNERS ÓPTICOS 3D
Um scanner óptico 3D é um instrumento que permite reconstruções de qualquer objeto real.
O seu resultado é entregue em termos de modelos digitais poligonais – malhas triangulares
ou nuvens de pontos – que representam a superfície do objeto digitalizado.
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
Veremos a seguir algumas aplicações em que as técnicas de modelagem geométrica automática
são aplicadas.
INDÚSTRIA DA CONSTRUÇÃO E ENGENHARIA CIVIL
PROCESSO DE DESIGN
ENTRETENIMENTO
ANÁLISE FORENSE
INDÚSTRIA DA CONSTRUÇÃO E ENGENHARIA CIVIL
Por exemplo, no controle de robôs em que um scanner pode ser usado para fornecer informações
sobre o ambiente; desenhos de pontes e instalações industriais; e na documentação de locais
históricos.
PROCESSO DE DESIGNPode ser usado para aumentar a precisão de peças e formas complexas e dar uma visão mais
realística de plantas para os engenheiros, por exemplo.
ENTRETENIMENTO
Usar scanners 3D para a indústria do entretenimento para criar modelos 3D digitais para filmes e
videogames, por exemplo.
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps21
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps21
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps22
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps22
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps22
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps22
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps22
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps23
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps23
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps23
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps23
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps23
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps24
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps24
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps24
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps24
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps24
ANÁLISE FORENSE
Documentar cenas de crime, refazer trajetórias de balas, analisar padrões de manchas de sangue,
entre tantas outras aplicações.
GEOMETRIA SÓLIDA CONSTRUTIVA (CSG)
A geometria sólida construtiva (CSG) é uma das técnicas para modelagem de sólidos por meio
das seguintes operações booleanas (FERGUSON, 2001):
UNIÃO
A operação união, representada pelo símbolo ∪, é a combinação de objetos tais que as
características predominantes de ambos são mantidas.
Na figura a seguir, apresentamos um exemplo no qual fazemos a união de um objeto quadrado e
um círculo e obtemos um novo objeto resultante dessa combinação.
Imagem: Sérgio Assunção Monteiro
 Exemplo da operação união.
DIFERENÇA
A operação diferença, representada pelo símbolo “ - ”, é a subtração de dois objetos, onde o
primeiro objeto é o subtraendo e o segundo é o minuendo. Nesse caso, as características do
minuendo são removidas do objeto subtraendo.
Na figura a seguir, apresentamos um exemplo no qual fazemos a diferença de um objeto quadrado
(subtraendo) e um círculo (minuendo) e obtemos um novo objeto resultante dessa diferença.
Imagem: Sérgio Assunção Monteiro
 Exemplo da operação diferença.
INTERSEÇÃO
A operação de interseção, representada pelo símbolo ∩, é a interseção de objetos tais que
apenas as características em comum de ambos são mantidas.
Na figura a seguir, apresentamos um exemplo no qual fazemos a interseção de um objeto
quadrado e um círculo e obtemos um novo objeto resultante dessa operação.
Imagem: Sérgio Assunção Monteiro
 Exemplo da operação de interseção.
Portanto, o princípio básico da GSC implica a construção de um modelo complexo a partir de um
conjunto de primitivas através de uma série de operações booleanas.
Na figura a seguir, apresentamos exemplos de primitivas.
Imagem: Sérgio Assunção Monteiro
 Exemplos de sólidos primitivos.
Na figura, da esquerda para a direita, temos um cubo, uma esfera, um cilindro e um cone. Através
da aplicação das operações booleanas para esses sólidos primitivos, podemos obter novas figuras
geométricas complexas.
TÉCNICAS DE MODELAGEM GEOMÉTRICA
MANUAL
A modelagem geométrica manual é um método que representa modelos através das medidas de
um modelo real considerando a escala e visão de perspectivas.
Essa técnica tem grande dependência das habilidades do modelador, mas, ainda assim, é
bastante usada para fazer esboços. Em especial, nas etapas iniciais dos processos de criação de
ferramentas, veículos e ambientes. Inicialmente, inclusive, foi bastante usada para conceber e
testar novos modelos pelas indústrias automobilística e aeronáutica.
Os projetos desenvolvidos por essa técnica são registrados em um esboço que, por sua vez, faz a
representação gráfica das ideias do projeto. Portanto, os objetos precisam ter características
geométricas bem definidas, tais como altura, largura e profundidade, e demais características
relevantes.
Um esboço deve:
Ser compreensível.
Ser simples.
Manter as relações de proporcionalidade entre as dimensões.
Em projetos de desenho técnico, por exemplo, a representação gráfica do desenho em si deve ser
elaborada em conformidade com as recomendações das normas internacionais. No Brasil, há
normas específicas editadas pela Associação Brasileira de Normas Técnicas (ABNT), sendo as
normas a seguir consideradas as principais:
1
NBR 8403/84 – Aplicações de linhas e tipos de largura
2
NBR 10068/87 – Folha de desenho – leiaute e dimensões
3
NBR 10126/87 – Cotagem em desenho técnico
4
NBR 6492/94 – Representações de projetos de Arquitetura
5
NBR 8196/99 – Emprego de escalas e
6
NBR 13142/99 – Dobramento de cópia
Essas normas servem para padronizar a elaboração de desenhos e, desse modo, facilitar o
entendimento dos envolvidos no projeto.
EXPLORAR AS OPERAÇÕES E
EXEMPLIFICAR COM TINKERCAD (FREE ON-
LINE)
Agora, vamos demonstrar a aplicação das operações booleanas para geometria de sólidos. Para
isso, vamos utilizar o TinkerCad para criar projetos.
Para conseguir executar os exemplos que vamos apresentar, é necessário criar uma conta
gratuita no TinkerCad. Basta acessar o site do TinkerCad e abrir uma conta.
Feito isso, agora vamos criar nosso projeto.
Imagem: Captura de tela TinkerCad
Na tela inicial, clique no botão “Criar novo design” para abrir a tela de criação de projetos.
Imagem: Captura de tela TinkerCad
Na tela de criação de projetos, a parte apontada por “1” é chamada de plano de trabalho e a
parte apontada por “2” é onde podemos selecionar objetos e adicioná-los no plano de trabalho.
Agora, selecionamos um cubo e o adicionamos ao plano de trabalho.
Imagem: Captura de tela TinkerCad
Agora, com algumas operações básicas, transformamos o cubo em um paralelepípedo. Clicamos
sobre ele para abrir a lista de configurações. Depois, escolhemos o preenchimento do sólido por
“orifício” que deixa a figura transparente. Em seguida, configuramos altura, comprimento e largura.
Já criamos nosso primeiro projeto. A seguir, vamos apresentar exemplos de aplicação das
operações booleanas no TinkerCad. Para isso, utilizaremos um cubo e uma esfera.
 Seleção dos sólidos primitivos. Captura de tela do TinkerCad.
UNIÃO
Vamos começar pela união de dois sólidos.
Nosso primeiro passo é mudar a altura da esfera obtendo um objeto oval chamado de elipsoide.
Em seguida, fazemos o alinhamento do elipsoide com o cubo.
Depois, combinamos os dois sólidos.
Em seguida, fazemos a união das figuras através da opção de agrupamento.
Finalmente, obtemos a união dos dois sólidos.
INTERSEÇÃO
Vamos apresentar, agora, como fazer a interseção entre dois sólidos.
Imagem: Captura de tela do TinkerCad
O primeiro passo é adicionar os sólidos ao plano de trabalho. Neste caso, colocamos um cubo e
uma esfera.
Imagem: Captura de tela do TinkerCad
Em seguida, fazemos o alinhamento dos sólidos.
Imagem: Captura de tela do TinkerCad
Feito isso, vamos combinar os sólidos.
Imagem: Captura de tela do TinkerCad
Agora, precisamos desagrupar os sólidos. Para isso, selecionamos a figura geométrica e, no
menu, clicamos na opção “desagrupar”.
Imagem: Captura de tela do TinkerCad
Em seguida, precisamos selecionar a esfera e, após isso, selecionar a opção “orifício.
Imagem: Captura de tela do TinkerCad
Vamos selecionar novamente os sólidos e agrupá-los.
Imagem: Captura de tela do TinkerCad
A ideia, agora, é combinar essafigura com um cubo e, depois, removê-la, obtendo a interseção
entre o cubo e a esfera. Então o próximo passo é adicionar um cubo ao plano de trabalho.
Imagem: Captura de tela do TinkerCad
No próximo passo, fazemos o alinhamento entre o sólido da figura anterior e o cubo.
Imagem: Captura de tela do TinkerCad
Então, fazemos a combinação dos sólidos.
Imagem: Captura de tela do TinkerCad
Precisamos desagrupar os sólidos.
Imagem: Captura de tela do TinkerCad
Em seguida, selecionamos qualquer um dos vértices do sólido e então a opção “orifício”, para que
fique transparente.
Imagem: Captura de tela do TinkerCad
Novamente, selecionamos os sólidos e fazemos o agrupamento.
Imagem: Captura de tela do TinkerCad
Finalmente, temos o resultado da interseção do cubo com a esfera.
DIFERENÇA
Agora vamos mostrar como fazer a diferença entre um cubo e uma esfera.
Imagem: Captura de tela do TinkerCad
O primeiro passo é adicionar os sólidos ao plano de trabalho.
Imagem: Captura de tela do TinkerCad
Em seguida, fazemos o alinhamento dos sólidos.
Imagem: Captura de tela do TinkerCad
Agora, fazemos a combinação dos sólidos.
Imagem: Captura de tela do TinkerCad
Devemos selecionar a esfera e a opção “orifício”, para que ela fique transparente.
Imagem: Captura de tela do TinkerCad
Depois, precisamos selecionar ambos os objetos e agrupá-los.
Imagem: Captura de tela do TinkerCad
Finalmente, temos a diferença entre o cubo e a esfera.
MODELAGEM DE OBJETOS
O vídeo aborda os elementos da modelagem de objetos e o programa TinkerCad.
VERIFICANDO O APRENDIZADO
1. UMA DAS REPRESENTAÇÕES GEOMÉTRICAS DE SÓLIDOS É A
ARAMADA, TAMBÉM CONHECIDA COMO WIREFRAME. ESSA
REPRESENTAÇÃO É BASTANTE UTILIZADA, POIS É SIMPLES DO PONTO
DE VISTA COMPUTACIONAL E, DE FATO, BASTANTE ÚTIL NA MODELAGEM
GEOMÉTRICA. A RESPEITO DA REPRESENTAÇÃO WIREFRAME,
SELECIONE A OPÇÃO CORRETA.
A) A estrutura de dados para armazená-la precisa lidar com os vértices, ligações entre eles e com
os níveis das cores.
B) A representação aramada utiliza informações sobre vértices e arestas para exibir sólidos.
C) Por ser simples, a estrutura de dados associada à representação wireframe também é simples,
precisando apenas armazenar informações relativas às arestas.
D) Uma das principais vantagens da representação wireframe é a forma única que ela utiliza para
exibir um sólido, evitando, assim, ambiguidades de interpretação.
E) A representação aramada só deve ser aplicada para descrever objetos sólidos.
2. UMA DAS REPRESENTAÇÕES DE FIGURAS GEOMÉTRICAS É A
REPRESENTAÇÃO POR FACES OU WINGED EDGE. NESSA
REPRESENTAÇÃO AS FACES SÃO POLÍGONOS. A RESPEITO DA
REPRESENTAÇÃO POR FACES, SELECIONE A OPÇÃO CORRETA.
A) A estrutura de dados que trata dessa representação precisa, obrigatoriamente, representar os
polígonos como combinações de triângulos.
B) A representação por faces é a forma mais eficiente para exibir sólidos.
C) Na representação por faces é essencial que a estrutura de dados tenha informações que
representem os polígonos e a topologia deles.
D) A principal característica da estrutura de dados associada à representação por faces é de fazer
uso apenas de informações posicionais dos pontos das faces, aumentando, assim, sua eficiência
computacional.
E) A representação por faces deve ser utilizada apenas para representações tridimensionais.
GABARITO
1. Uma das representações geométricas de sólidos é a aramada, também conhecida como
wireframe. Essa representação é bastante utilizada, pois é simples do ponto de vista
computacional e, de fato, bastante útil na modelagem geométrica. A respeito da
representação wireframe, selecione a opção correta.
A alternativa "B " está correta.
A representação de sólidos por wireframe faz uso de uma estrutura de dados que tenha
informações sobre vértices e arestas do objeto desenhado. Apesar de sua simplicidade, ela possui
problemas relacionados à ambiguidade e determinação de características físicas, tais como
massa e volume.
2. Uma das representações de figuras geométricas é a representação por faces ou winged
edge. Nessa representação as faces são polígonos. A respeito da representação por faces,
selecione a opção correta.
A alternativa "C " está correta.
A representação de faces utiliza informações a respeito das ligações entre os vértices das faces
da figura sólida. Dessa forma, é essencial que a estrutura de dados tenha informações sobre os
vértices e as ligações entre eles, de modo que seja possível reconstruir os polígonos que são as
faces.
MÓDULO 2
 Listar os aspectos relacionados às técnicas de rasterização
EXIBIÇÃO DOS MODELOS SÓLIDOS
O projeto de modelos de geometria sólida (CSG) envolve dois aspectos (FERGUSON, 2001):
A matemática para representação das superfícies e sua especificação.
A organização do modelo (questões como a composição e as relações entre os sólidos, conforme
especificado por suas dimensões).
Além disso, ainda é necessário tratar o melhoramento da qualidade do sólido, o que,
normalmente, é chamado de refinamento. Portanto, para tratar essas questões de modelagem,
precisamos entender como funcionam os métodos gráficos interativos.
Um desses métodos é o de manipulação direta, que permite que o usuário interaja com
entidades geométricas por meio de sua representação visual na tela.
Os métodos para visualização de sólidos podem ser divididos em duas categorias, a saber:
MÉTODOS BASEADOS EM AVALIAÇÃO DE FRONTEIRAS
Utilizam algoritmos de visualização aplicáveis a modelos de fronteiras – chamados, normalmente,
de B-reps, que é um acrônimo para boundary representation. Para isso, eles aplicam um algoritmo
de conversão de representações CSG para obter as respectivas representações B-reps. Esse
processo é conhecido por "avaliação de fronteiras" – do inglês: boundary evaluation. Um sólido é
representado como uma coleção de elementos de superfície conectados em um modelo que
compreende componentes como faces, arestas e vértices e as conexões entre eles, juntamente
com definições geométricas, tais como superfícies, curvas e pontos, respectivamente, para esses
componentes.
MÉTODOS DE VISUALIZAÇÃO DIRETA
Obtêm uma imagem de um sólido CSG usando apenas as informações que estão contidas na
própria representação. Os algoritmos de exibição direta, do inglês direct display algorithms,
exibem um modelo CSG sem convertê-lo para um modelo de representação por fronteiras que usa
um conjunto de pontos que compõem um sólido para representar seus limites, cuja representação,
normalmente, é um conjunto de faces.
RASTERIZAÇÃO DE RETAS
A rasterização é a técnica de converter uma imagem representada em um formato de gráfico
vetorial em um conjunto de pixels para saída em uma tela (BUSS, 2003). Imagens vetoriais são
feitas de pontos, linhas e curvas. Exemplos de programas para esse tipo de representação são o
Adobe Illustrator, CorelDRAW e Inkscape.
Imagens rasterizadas são formadas de pixels. Cada pixel é responsável por uma cor. As imagens
representadas por vetor não dependem da resolução da tela, enquanto imagens rasterizadas têm
dependência da resolução.
 ATENÇÃO
Quando modificamos o tamanho de uma imagem rasterizada, vamos aumentar ou diminuir os
pixels, o que pode significar perda de qualidade.
Precisamos estabelecer algumas premissas para aplicar a rasterização com linhas.
A largura de uma linha é de 1 pixel.
Cada pixel estará em apenas um dos estados: ativo ou desativado.
O sistema de coordenadas que usamos é o de pixels na tela.
Na figura a seguir, apresentamos um exemplo de uma tela com seus respectivos pixels e com o
sistema de coordenadas em destaque.
Imagem: Sérgio Assunção Monteiro
 Exemplo de pixels.
Os símbolos “+” estão no centro de cada pixel e, a cada um deles, associamos valores inteiros. O
ponto a é dado aproximadamente por a(1,6;1,2), ou seja, 1,6 na horizontal e 1,2 na vertical, e o
ponto b é dado por b(4,9;2,9).
Para fazer a rasterização, precisamos encontrar o pixel mais próximoverticalmente da linha em
cada coluna de pixels.
Na figura a seguir mostramos como esse processo funciona.
Imagem: Sérgio Assunção Monteiro
 Busca pelo pixel mais próximo.
Na figura podemos observar os passos a seguir:
PASSO 1
Representado por P1 – o pixel mais próximo da linha é o (2;1).

PASSO 2
O pixel mais próximo da linha é o (3;2).

PASSO 3
O pixel mais próximo é o (4;3).
Então, podemos ver o resultado da rasterização na figura que segue, com os pixels selecionados
na rasterização destacados em verde.
Imagem: Sérgio Assunção Monteiro
 Resultado da rasterização.
Os principais algoritmos para rasterização de retas são:
Algoritmo de linha incremental
Algoritmo baseado no erro
Algoritmo de Bresenham
Algoritmo do ponto médio
RASTERIZAÇÃO DE POLÍGONOS
Polígonos são figuras pertencentes ao espaço bidimensional com as seguintes características:
Possuem arestas ou bordas que são segmentos de linha, definidos por dois vértices (pontos
finais).
São formados por um conjunto de arestas, tal que cada vértice é compartilhado exatamente por
duas arestas.
São chamados de polígonos simples se as suas arestas não têm interseção entre si.
Veja alguns exemplos de polígonos:
Imagem: Sérgio Assunção Monteiro
POLÍGONOS SIMPLES (SEM INTERSEÇÃO DAS ARESTAS)

Imagem: Sérgio Assunção Monteiro
POLÍGONOS NÃO SIMPLES
A rasterização de polígonos é o processo de transformação de um polígono – ou seja, uma região
plana fechada delimitada por segmentos de retas – em um conjunto de pixels conexos. O
algoritmo mais conhecido de rasterização de polígonos é o ScanLine (BUSS, 2003), também
conhecido como técnica de varredura.
Um conceito importante nesse contexto de rasterização é o de coerência espacial. No trabalho de
Sutherland, Sproull e Schumacker (1974), os autores apresentaram diversos tipos de coerências
que os algoritmos de visibilidade podem explorar. A seguir, veremos alguns exemplos.
COERÊNCIA DE ARESTA
A visibilidade da aresta muda quando cruza outra aresta ou quando passa por uma aresta visível.
COERÊNCIA DO OBJETO
Os objetos são separados entre si.
COERÊNCIA DE FACE
As propriedades gráficas de uma face devem variar de forma suave, pois transições bruscas são
interpretadas como fronteira de duas faces.
COERÊNCIA DE ÁREA
É usada para agrupar pixels cobertos por uma mesma face visível.
COERÊNCIA DE PROFUNDIDADE
A profundidade da superfície em um ponto é calculada, enquanto a profundidade dos demais
pontos da superfície pode ser determinada por uma equação de diferença simples.
COERÊNCIA DA LINHA DE VARREDURA
Uma determinada linha de varredura (scanline) e a sua linha de varredura sucessora possuem
pequena variação das propriedades geométricas.
COERÊNCIA DO QUADRO
É usada para objetos animados, quando há pouca mudança na imagem de um quadro para outro.
COERÊNCIA DE BORDA IMPLÍCITA
Se uma face entra em outra, a linha de interseção pode ser determinada a partir de dois pontos de
interseção.
O algoritmo ScanLine leva em consideração alguns desses tipos de coerência espacial e, assim,
determina, linha por linha, os pixels dentro de uma região – ou seja, faz a varredura dos pixels –
com uso dos seguintes fatos:
Os pixels das fronteiras – ou seja, das arestas – do polígono podem ser obtidos com uso dos
algoritmos de rasterização de linhas (ou retas).
Em uma linha de varredura, os pixels podem ser divididos em grupos separados em relação aos
pixels que fazem interseção com a fronteira do polígono e os que não possuem interseção.
Na mesma linha de varredura, podem existir pixels que pertencem ao interior de um polígono e os
que não pertencem.
Na próxima figura apresentamos um exemplo da aplicação do algoritmo de ScanLine para a
rasterização de um polígono.
Imagem: Sérgio Assunção Monteiro
 Exemplo de aplicação do algoritmo ScanLine. Elaborado na ferramenta Mathematik.
Como podemos perceber na figura, a imagem rasterizada apresenta bordas serrilhadas – do
inglês jagged ou stair step pattern. Esse é um dos principais problemas encontrados nos
processos de rasterização.
PREENCHIMENTO DE POLÍGONOS
Os polígonos são os elementos fundamentais para que possamos representar figuras na tela do
computador. Para preenchê-los com cores, temos alguns algoritmos que podemos utilizar. Os
mais conhecidos para essa finalidade são os algoritmos de:
PREENCHIMENTO DE BORDAS
Do inglês boundary fill, o algoritmo de preenchimento de borda apresenta uso limitado, pois o seu
custo computacional, ou seja, de processamento, torna-o inadequado para tratar problemas em
tempo real.
PREENCHIMENTO POR VARREDURA
Mais conhecido por algoritmo ScanLine, é o algoritmo mais usado para preenchimento de
polígonos.
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
Na seção anterior, já fizemos uma introdução sobre o algoritmo ScanLine. Agora, vamos entender
melhor alguns dos conceitos que ele utiliza e um exemplo de como é o seu funcionamento.
O algoritmo ScanLine faz o preenchimento de polígonos usando linhas horizontais, chamadas de
scanlines. O objetivo desse algoritmo é preencher os pixels internos de um polígono.
Na figura a seguir, apresentamos um exemplo de funcionamento do algoritmo.
Imagem: Sérgio Assunção Monteiro
 Exemplo de funcionamento do ScanLine. Elaborado na ferramenta Mathematik.
Na figura podemos ver que a scanline é a linha horizontal que passa pelo ponto (0;7) do plano
cartesiano. Além disso, os segmentos que vão de x = 2 até x = 4 e os de x = 10 até x = 14 são dos
pixels internos ao polígono.
O processo de varredura é feito até que todo o polígono seja avaliado. Apresentamos na próxima
figura o resultado do algoritmo.
Imagem: Sérgio Assunção Monteiro
 Resultado do ScanLine. Elaborado na ferramenta Mathematik
A estrutura para esse algoritmo precisa conter as informações descritas a seguir.
TABELA DA LISTA DE ARESTAS
Mantém o registro de todas as arestas, armazenando suas coordenadas.
TABELA DE ARESTAS ATIVAS
Contém todas as arestas (bordas) do polígono que são interceptadas pela scanline atual.
As arestas são inseridas na tabela de maneira ordenada (valor crescente de x).
TABELA DE POLÍGONOS
Consiste em informações a respeito do polígono, como cor da superfície, por exemplo.
REMOÇÃO DE LINHAS E SUPERFÍCIES
ESCONDIDAS
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
A remoção de partes ocultas de imagens de objetos sólidos é um desafio da computação gráfica.
No mundo físico, os raios de luz são obstruídos por causa do material opaco desses objetos e,
assim, não conseguimos visualizar partes deles.
No caso do computador, não é feita nenhuma eliminação automática quando os objetos são
projetados no sistema de coordenadas da tela. Ao contrário disso, todas as partes dos objetos são
exibidas, inclusive as que deveriam estar ocultas. Então, para remover essas partes e criar
imagens mais próximas da realidade, devemos aplicar uma linha oculta, ou um algoritmo de
superfície oculta, ao conjunto de objetos.
 ATENÇÃO
O algoritmo precisa estar habilitado para operar em diferentes tipos de cena, além de ter que gerar
várias formas de saída e tratar com imagens de diferentes níveis de complexidade.
Algoritmos que tratam da remoção de linhas e superfícies ocultas usam classificação geométrica
para distinguir as partes visíveis dos objetos daquelas que estão ocultas. A classificação
geométrica localiza objetos próximos ao observador e, portanto, são visíveis.
Os algoritmos de remoção de linhas e de superfícies ocultas utilizam várias formas de coerência
para minimizar o processamento necessário para gerar uma imagem. As diferentes formas de
regularidades nas imagens estão relacionadas aos diferentes tipos de coerência.
Buss (2003) apresenta a seguir a classificação de alguns dos algoritmos de detecção de
superfícies ocultas.
MÉTODOS DE ESPAÇO DE OBJETO
Compara várias partes de objetos. Após a comparação, as superfíciesvisíveis e ocultas são
determinadas. Na representação por wireframe, eles são usados para determinar se uma linha é
visível. Portanto, esses algoritmos são baseados em linha, em vez de superfície.
MÉTODOS DE ESPAÇO DE IMAGEM
Determina as posições dos pixels. É usado para localizar a superfície visível em vez de uma linha
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
visível. Cada ponto é detectado por sua visibilidade. Se um ponto estiver visível, o pixel está
ativado, caso contrário, será desativado.
Alguns dos principais algoritmos usados para detecção de superfície de linha oculta são:
Algoritmo de remoção da face posterior
Algoritmo Z-Buffer
Algoritmo do Pintor
Algoritmo de linha de varredura
Algoritmo de subdivisão
Algoritmo de horizonte flutuante
RASTERIZAÇÃO
O vídeo aborda a exibição dos modelos sólidos e a rasterização de retas e polígonos.
VERIFICANDO O APRENDIZADO
1. OS ALGORITMOS DE RASTERIZAÇÃO TÊM COMO OBJETIVO FAZER A
CONVERSÃO DE UMA IMAGEM VETORIAL PARA UMA REPRESENTAÇÃO
POR PIXELS. UMA DAS IMPORTANTES CARACTERÍSTICAS QUE ELES
EXPLORAM É A DA COERÊNCIA QUE TRATA DE DIVERSOS ASPECTOS. EM
RELAÇÃO À COERÊNCIA APLICADA AO CONTEXTO DE COMPUTAÇÃO
GRÁFICA, SELECIONE A ÚNICA OPÇÃO CORRETA.
A) Quando uma aresta cruza com outra aresta, é necessário tratar, explicitamente, se ela será
visível ou não. É um caso de coerência de visibilidade.
B) A coerência do objeto afirma que os objetos são separados.
C) Quando a face de um objeto sólido varia de forma brusca, sabemos que a coerência de face foi
contemplada.
D) Quando uma área é coberta, não é necessário guardar seus pixels, o que otimiza bastante o
processo de renderização. Trata-se de um caso de coerência de área.
E) A coerência de profundidade trata do cálculo de todos os pontos de uma superfície.
2. OS MÉTODOS PARA VISUALIZAÇÃO DE SÓLIDOS PODEM SER
DIVIDIDOS NOS MÉTODOS BASEADOS EM AVALIAÇÃO DE FRONTEIRAS E
OS DE VISUALIZAÇÃO DIRETA. AMBOS OS MÉTODOS POSSUEM PONTOS
FORTES E FRACOS. EM RELAÇÃO A ESSES MÉTODOS, SELECIONE A
OPÇÃO CORRETA.
A) Os métodos baseados em avaliação de fronteiras (B-reps) representam os sólidos através dos
pontos, arestas e superfícies.
B) Os métodos de avaliação de fronteiras, também conhecidos com B-reps, que significa
representação do espaço binário, usam uma árvore binária para representar a topologia de um
sólido.
C) Os métodos de visualização direta utilizam de informações do ambiente em que o sólido está
para representá-lo com mais detalhes.
D) Os algoritmos de exibição direta fazem primeiro a conversão de uma imagem de um sólido
para um modelo de representação por fronteiras.
E) Nos métodos de avaliação de fronteiras, um sólido é representado como um conjunto de
expressões booleanas de objetos sólidos primitivos.
GABARITO
1. Os algoritmos de rasterização têm como objetivo fazer a conversão de uma imagem
vetorial para uma representação por pixels. Uma das importantes características que eles
exploram é a da coerência que trata de diversos aspectos. Em relação à coerência aplicada
ao contexto de computação gráfica, selecione a única opção CORRETA.
A alternativa "B " está correta.
A coerência do objeto trata das relações entre objetos distintos ou entre partes separadas dos
mesmos objetos.
2. Os métodos para visualização de sólidos podem ser divididos nos métodos baseados em
avaliação de fronteiras e os de visualização direta. Ambos os métodos possuem pontos
fortes e fracos. Em relação a esses métodos, selecione a opção CORRETA.
A alternativa "A " está correta.
Os métodos de avaliação de fronteiras representam os sólidos através da descrição da superfície
deles como uma estrutura de dados composta de vértices, arestas e faces.
MÓDULO 3
 Caracterizar os algoritmos de iluminação
EMISSORES
A iluminação e o sombreamento são ferramentas importantes para fazer com que as imagens
gráficas pareçam mais realistas e mais compreensíveis. Eles podem fornecer informações sobre a
curvatura e a orientação das superfícies e são importantes para tornar a tridimensionalidade
aparente em uma imagem gráfica. Modelos de iluminação em computação gráfica são baseados
em uma abordagem modular. Dessa forma, podemos especificar:
As posições e propriedades das fontes de luz.
As propriedades de superfície dos materiais.
As propriedades das luzes e os materiais interagem para criar iluminação, cor e sombreamento
observados de determinado ponto de vista. A natureza da luz emitida por uma fonte e sua
interação com todos os objetos de uma cena são definidos por um modelo de iluminação de
computação gráfica.
Precisamos, agora, apresentar a classificação da emissão de luz e dos tipos de iluminação. Em
relação à emissão de luz, podemos classificar os objetos das maneiras apresentadas a seguir.
FONTES DE LUZ PRÓPRIA
javascript:void(0)
javascript:void(0)
O sol e as lâmpadas, por exemplo.
REFLETORES
São objetos com cores e propriedades ao longo da sua superfície.
Agora, em relação aos tipos de iluminação, podemos classificar as luzes das formas indicadas a
seguir.
AMBIENTAL
Em que todas as superfícies do ambiente são iluminadas da mesma forma, portanto, a posição da
câmera não é relevante.
DIRECIONAL
Onde os raios de luz são paralelos e de mesma intensidade. É uma simulação da emissão dos
raios solares. Dependendo da orientação da superfície, é possível perceber seus efeitos.
PONTUAL
Os raios de luz são emitidos em todas as direções. Nesse caso, os objetos são atingidos com
diferentes direções e intensidades. Isso significa que há uma variação da iluminação nas diversas
partes do objeto, dependendo da direção e da distância da fonte de luz.
REFLETORA
Aqui a emissão dos raios de luz ocorre na forma de um cone apontado para uma direção.
Conforme o raio de luz se distancia da fonte, a intensidade da luz diminui.
O modelo de iluminação e sombreamento para computação gráfica tridimensional mais popular é
o de Phong (BUSS, 2003). Isso ocorre por ele ser aplicável para obter diversos efeitos visuais e
devido à facilidade de implementá-lo de forma eficiente em software e hardware.
É o principal modelo de iluminação para todos os hardwares gráficos de computadores pessoais,
consoles de jogos e outros aplicativos em tempo real. Ele trata o modo como a luz é refletida nas
superfícies. Nele, todas as fontes de luz são modeladas como fontes de luz pontual.
Além disso, a luz é modelada em três componentes de cores discretas:
javascript:void(0)
javascript:void(0)
autor/shutterstock
VERMELHO
autor/shutterstock
VERDE
autor/shutterstock
AZUL
Isso significa que o modelo assume que toda luz consiste de um componente vermelho puro, um
componente verde puro e um componente azul puro. Pelo princípio de superposição, podemos
calcular as intensidades de reflexão da luz para cada fonte de luz de forma independente e para
cada um dos três componentes de cor.
PRINCÍPIO DE SUPERPOSIÇÃO
O princípio da superposição afirma que nos pontos onde ocorre a superposição, ou seja,
mais de uma onda de luz é emitida, o efeito resultante é a soma dos efeitos que seriam
produzidos pelas ondas que se superpõem, caso cada uma delas atingisse sozinha aquele
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
ponto.
SOMBREAMENTO (SHADING)
Sombreamento é o processo de renderização que tem por objetivo calcular as cores dos objetos
na cena tridimensional (WOO; POULIN; FOURNIER, 1990). Na renderização, o nosso objetivo é
reproduzir a forma, a visibilidade e a aparência dos objetos vistos a partir de determinado ponto de
vista.
RENDERIZAÇÃO
Renderização é o processamento que combina um material digitalizado, tais como imagens,
vídeos ou áudio com legendas e efeitos. Esse processo faz a transformação de um ou mais
arquivos em um único arquivo, fazendo, assim, a combinação dos diversos elementos e
recursos com objetivo de melhorar a experiência do usuário.
O sombreamento simula as cores dos objetos visíveisde determinado ponto de vista. O ponto de
vista aqui desempenha um papel importante, pois a aparência dos objetos pode mudar com o
ângulo de visão.
A aparência de um objeto também depende de alguns parâmetros, tais como:
Quantidade de luz na cena.
Orientação das superfícies em relação às fontes de luz na cena.
Cores dos objetos.
O sombreamento se baseia em leis da Física – que descrevem a maneira como a luz interage
com a matéria – para simular a aparência de objetos de uma maneira consistente e realista. Na
computação gráfica, uma função de sombreamento é definida como uma função que produz o
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
valor da intensidade de cada ponto no corpo de um objeto a partir das características da fonte de
luz, do objeto e da posição do observador (BUSS, 2003).
 DICA
O sombreamento também é chamado de tonalização.
A ideia é calcular o nível do sombreamento dos objetos a partir de suas características e das
fontes de luz. Vejamos a seguir os principais modelos de sombreamento, segundo Woo, Poulin e
Fournier (1990).
ILUMINAÇÃO CONSTANTE (FLAT)
Uma região inteira obtém a cor de um de seus vértices. A cor de uma linha, um triângulo ou
quadrilátero é determinada pela cor do último vértice especificado. O cálculo da reflexão da luz é
feito apenas uma vez por superfície.
ILUMINAÇÃO DE GOURAUD
Faz o cálculo da reflexão da luz para cada vértice. Desse modo, cada face é resultado do
gradiente entre os vértices. A iluminação dos outros pontos é calculada através da interpolação. O
sombreamento possui uma qualidade mais suave e seu cálculo é mais demorado do que o modelo
de iluminação constante.
ILUMINAÇÃO DE PHONG
Faz a interpolação linear dos vetores normais. Desse modo, seus efeitos são mais realistas. A
desvantagem em relação aos outros modelos é que consome mais processamento.
Um conceito importante no contexto de sombreamento é o de fotorrealismo, que trata da
reprodução de características reais para uma imagem processada.
Se o fotorrealismo é o objetivo, o sombreamento se preocupa em reproduzir a aparência de
superfícies reais com um grau de precisão que o olho humano não pode mais fazer a diferença
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
entre olhar para uma imagem reproduzida pelo computador e o objeto do mundo real.
Outra possibilidade é a de renderização não fotorrealística, usada para criar ou simular estilos
de renderização artística, tais como pintura a óleo, ou desenvolver estilos inteiramente novos que
só podem ser explorados e gerados com computadores.
REFLEXÃO
A reflexão é o resultado do que acontece com um feixe de luz incidente quando ele atinge uma
superfície reflexiva como vidro ou água, por exemplo. Na figura a seguir, apresentamos um
exemplo de reflexão.
Imagem: Sérgio Assunção Monteiro
 Diagrama ilustrativo de reflexão de um feixe de luz.
Onde:
Representa o ângulo de incidência.
α
Representa o ângulo de reflexão.
N
É a reta normal perpendicular à superfície refletora.
Pelas leis da reflexão, sabemos que α e ß são iguais e que fazem parte do mesmo plano os raios
de luz incidente e refletido e a reta normal.
Como já dissemos anteriormente, o modelo mais popular de iluminação é o modelo Phong. Esse
modelo permite dois tipos de reflexão.
DIFUSA
ESPECULAR
DIFUSA
Nesse tipo de reflexão, a luz é refletida uniformemente em todas as direções da superfície. Esse é
o modo de reflexão predominante para superfícies não brilhantes.
ESPECULAR
Aqui, a luz é refletida de forma espelhada, como o que ocorre em uma superfície brilhante. A luz
refletida especularmente deixa uma superfície com seu ângulo de reflexão aproximadamente igual
ao seu ângulo de incidência. Essa é a principal característica da luz refletida em uma superfície
polida. As reflexões especulares são a razão de existirem os pontos brilhantes em superfícies
curvas onde ocorre uma reflexão especular intensa.
β
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps81
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps81
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps82
http://estacio.webaula.com.br/cursos/temas/01990/index.html#collapse-steps82
Além de dividir a reflexão em duas categorias, o modelo de iluminação Phong trata da iluminação
como sendo de três tipos distintos.
ESPECULAR
É a luz de uma fonte de luz pontual que será refletida de modo especular.
DIFUSA
É a luz de uma fonte de luz pontual que será refletida difusamente.
AMBIENTE
É a luz que chega igualmente de todas as direções, em vez de uma fonte de luz pontual.
REFRAÇÃO
Quando um raio de luz se move de um meio para outro, sua velocidade muda. Desse modo, a
direção do raio de luz também pode mudar. Essa propriedade é chamada de refração. Na figura a
seguir, apresentamos um exemplo de refração.
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
Imagem: Sérgio Assunção Monteiro
 Diagrama ilustrativo da refração de um feixe de luz.
O símbolo γ representa o ângulo de refração. Para calcular γ, precisamos calcular o índice de
refração, representado por η, que é dado por:
 Atenção! Para visualização completa da equação utilize a rolagem horizontal
Onde:
C
É a velocidade da luz no vácuo que é dada, aproximadamente, por 
É a velocidade da luz no meio em que a luz é refratada, dada em metros por segundo.
Dado que a velocidade da luz é maior no vácuo do que em qualquer outro meio, o índice de
refração sempre será maior ou igual a 1. Agora, podemos enunciar as leis da refração.
1ª LEI
Os raios de luz incidente e refratado, bem como a reta normal, pertencem ao mesmo plano, ou
seja, são coplanares.
2ª LEI
Conhecida como Lei de Snell-Descartes, é usada para calcular o desvio angular do raio de luz
refratado, tal que a razão entre os senos dos ângulos de incidência (α) e refração (γ) é igual à
η  =   c
ν
3x108m/s
ν
razão entre as velocidades da luz nos meios incidente e refratado, ou seja:
 Atenção! Para visualização completa da equação utilize a rolagem horizontal
Aplicando algumas manipulações nessa equação, obtemos as relações válidas dadas por:
 Atenção! Para visualização completa da equação utilize a rolagem horizontal
TRANSPARÊNCIA
A transparência é a propriedade física que alguns materiais possuem de permitir que a luz passe
através deles com baixa dispersão. Isso significa que objetos transparentes têm um
comportamento similar ao de filtros de luz.
 EXEMPLO
Um objeto transparente vermelho que seja iluminado por uma fonte de luz deixará passar apenas
luz vermelha, absorvendo todas as componentes de verde e azul. Então, se iluminarmos o objeto
desse exemplo diante de uma parede, sua sombra vai aparecer em vermelho.
Podemos ver através de um objeto transparente os objetos que estão do outro lado dele. A
imagem que vemos através de um objeto transparente é semelhante à imagem que podemos ver
sem ele.
=se n α
se n γ
νi
νr
= =se n α
se n γ
νi
νr
ηr
ηi
Contudo, se o objeto transparente se comportar como uma lente, ele pode alterar a forma como
enxergamos os objetos através dele, como o tamanho ou a forma da imagem.
Temos ainda dois conceitos importantes nesse contexto.
OPACIDADE
É exatamente o oposto de transparência, o que significa que objetos com essa propriedade não
permitem que a luz passe por eles.
TRANSLUCIDEZ
Ocorre quando a luz pode ser vista através de um objeto, mas com limitação dos detalhes. A luz
passa por um objeto translúcido, mas o material espalha a luz, então não podemos ver o objeto,
apenas sua sombra.
SOMBRAS
Uma sombra é uma região de relativa escuridão dentro de uma região iluminada, causada por um
objeto que obstrui total ou parcialmente a luz (GLASSNER, 1989).
Uma região é considerada uma sombra sehouver uma superfície que obstrua a emissão da luz
para região de interesse.
 ATENÇÃO
Uma sombra não é necessariamente uma região mais escura. Elas podem ser coloridas e
aparecer de diferentes maneiras em uma cena.
Se duas fontes de luz de cores diferentes forem usadas, uma região com obstrução de apenas
uma fonte de luz por um objeto opaco ficará na sombra dessa fonte de luz, mas pode ser
influenciada pela cor da segunda fonte de luz.
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
Um objeto também pode atuar como um filtro. Nesse caso, a cor da região de sombra pode então
depender do espectro de comprimento de onda filtrado por esse objeto. A difração de luz através
de um objeto transparente é outra fonte possível de cor dentro de uma sombra.
DIFRAÇÃO DE LUZ
A difração de luz é a curvatura da luz em torno dos cantos de uma região, de modo que ela
se espalhe e ilumine áreas onde uma sombra é esperada.
O cálculo das sombras é essencial para dar qualidade a uma imagem. As sombras fornecem
informações sobre as formas, posições relativas e características da superfície dos objetos, além
de indicar a localização aproximada, a intensidade, a forma e o tamanho das fontes de luz.
ALGORITMO DE RASTREAMENTO DE RAIOS
(RAY TRACING)
O algoritmo de rastreamento de raios ou, como é mais conhecido, ray tracing, mapeia os raios de
luz como se fossem lançados do olho do observador para o ambiente, a fim de realizar cálculos de
superfície visível (GLASSNER, 1989).
A ideia básica por trás do algoritmo é seguir os caminhos tomados pelos raios de luz, conforme
eles viajam das fontes de luz, até que finalmente alcancem a posição do olho do observador.
Como a maioria dos raios de luz nunca vai alcançar a posição dos olhos, o algoritmo traça os
caminhos percorridos pelos raios de luz do olho. Dessa forma, não desperdiçamos tempo
traçando raios que nunca alcancem o visualizador.
Na próxima figura, ilustramos o funcionamento do algoritmo ray tracing.
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
Imagem: Sérgio Assunção Monteiro
 Exemplo de ray tracing.
Ao observar a figura, podemos destacar os seguintes elementos:
Uma caixa e uma esfera representadas, respectivamente, por um retângulo e um círculo.
Uma única fonte de luz.
Uma janela de visualização.
Um visualizador.
O visualizador está olhando para a cena através da janela de visualização e nosso objetivo é
renderizar a cena. Para determinar a cor de um pixel P na janela de visualização, um raio é
traçado do olho do visualizador através do centro do pixel, e então determinamos o primeiro ponto
de intersecção do raio com os objetos na cena.
Na figura, o raio cruzaria o retângulo e, em seguida, o círculo. Como o raio cruza o retângulo
primeiro, significa que é isso que é visto através do pixel. O ponto de intersecção no retângulo é
sombreado de acordo com um modelo de iluminação, e o resultado é o conteúdo do pixel P.
RADIOSIDADE
Radiosidade é um algoritmo de iluminação global usado na renderização de gráficos
tridimensionais de computador (GLASSNER, 1989). Os algoritmos de iluminação global rastreiam
a propagação da luz difusa em torno de uma cena, geralmente resultando em sombras e reflexos
mais suaves e naturais, diferentemente dos algoritmos de iluminação direta, como é o caso do ray
tracing, que tende a simular a luz refletida apenas uma vez em cada superfície.
O objetivo de um algoritmo de radiosidade é calcular os níveis de iluminação e brilho de cada
superfície em uma cena. Ele é complementar aos métodos de ray tracing, pois os métodos de
rastreamento de raio rastreiam o transporte global de luz refletida especularmente, enquanto a
radiosidade rastreia o transporte global de luz refletida difusamente.
 DICA
A radiosidade é muito melhor em cenas suavemente iluminadas com sombras de cores sutis,
enquanto o traçado de raios é melhor para renderizar sombras nítidas.
s
ILUMINAÇÃO
O vídeo aborda os emissores, a reflexão, a refração e o ray tracing.
VERIFICANDO O APRENDIZADO
1. A ILUMINAÇÃO É UM DOS ASPECTOS MAIS IMPORTANTES NA
COMPUTAÇÃO GRÁFICA PARA OBTER REALISMO. ENTRE OS DIVERSOS
ASSUNTOS QUE PRECISAMOS ESTUDAR SOBRE A ILUMINAÇÃO ESTÃO A
CLASSIFICAÇÃO EM RELAÇÃO AOS TIPOS DE ILUMINAÇÃO. A RESPEITO
DOS TIPOS DE ILUMINAÇÃO, SELECIONE A OPÇÃO CORRETA.
A) Pode ser ambiental em que o ponto de vista da câmera influencia na captura de características
do objeto sob análise.
B) Quando a intensidade e as características do ambiente são relevantes, diz-se que o tipo de
iluminação é direcional.
C) Quando os raios luminosos são emitidos em todas as direções, diz-se que o tipo de iluminação
é pontual.
D) Pode ser refletora, quando os raios de luz atingem os objetos em diferentes direções e
intensidades.
E) Pode ser refratora, quando os objetos são atingidos por raios de luz emitidos de todas as
direções.
2. A REFLEXÃO É O RESULTADO DA EMISSÃO DE UM RAIO DE LUZ SOBRE
UMA SUPERFÍCIE LISA. NA FIGURA A SEGUIR, É APRESENTADO UM
EXEMPLO DE REFLEXÃO.
 EXEMPLO DE REFLEXÃO.
UTILIZANDO OS CONCEITOS RELACIONADOS À REFLEXÃO E A FIGURA,
SELECIONE A OPÇÃO CORRETA.
A) Trata-se de um exemplo de reflexão difusa, pois a superfície refletora é lisa.
B) O exemplo, claramente, mostra uma reflexão especular, uma vez que a superfície é espelhada.
C) Os raios luminosos indicados por I são chamados de raios refletores, uma vez que serão
refletidos.
D) Os raios luminosos indicados por II são chamados de raios incidentes, uma vez que são
resultado da incidência na superfície refletora lisa.
E) O ângulo ß é igual a 450, pois ele é igual ao valor do ângulo α.
GABARITO
1. A iluminação é um dos aspectos mais importantes na computação gráfica para obter
realismo. Entre os diversos assuntos que precisamos estudar sobre a iluminação estão a
classificação em relação aos tipos de iluminação. A respeito dos tipos de iluminação,
selecione a opção CORRETA.
A alternativa "C " está correta.
O tipo de iluminação pontual ocorre quando os raios luminosos são emitidos em todas as
direções, atingindo, assim, os objetos em diferentes direções e intensidades.
2. A reflexão é o resultado da emissão de um raio de luz sobre uma superfície lisa. Na figura
a seguir, é apresentado um exemplo de reflexão.
 Exemplo de reflexão.
Utilizando os conceitos relacionados à reflexão e a figura, selecione a opção CORRETA.
A alternativa "E " está correta.
Na reflexão, os ângulos de incidência e reflexão são iguais. No caso do exemplo da figura, o
ângulo de incidência é representado por α e o ângulo de reflexão é representado por ß.
CONCLUSÃO
CONSIDERAÇÕES FINAIS
No decorrer do conteúdo, apresentamos aspectos teóricos e práticos sobre técnicas de
renderização, tais como modelagem de objetos, algoritmos de rasterização e de iluminação, além
de explorarmos a aplicação TinkerCad para realizar operações sobre figuras geométricas
tridimensionais.
Entender esses conceitos nos ajuda a avançar nos estudos sobre computação gráfica e perceber
oportunidades de aplicações e de aperfeiçoamento de algoritmos.
AVALIAÇÃO DO TEMA:
REFERÊNCIAS
ANDRADE NETO, P. R.; GUEDES, A. L. P. Comparação de estruturas de dados para
subdivisões planares baseada em transições. RITA, v. 13, n. 1, p. 23-41, jul. 2006.
BUSS, S. R. 3-D computer graphics. A mathematical introduction with OpenGL. Cambridge:
Cambridge University Press, 2003.
FERGUSON, R. S. Practical algorithms for 3D computer graphics. Natick, Mass.: A K Peters,
2001.
GLASSNER, A. S. An introduction to ray tracing. Cambridge: Academic Press, 1989.
SUTHERLAND, I. E.; SPROULL, R. F.; SCHUMACKER, R. A. A characterization of ten hidden-
surface algorithms. Computing Surveys, n. 6, p. 1-55, 1974.
WOO, A.; POULIN, P.; FOURNIER, A. A survey of shadow algorithms. IEEE Computer Graphics
and Applications, v. 10, n. 6, p. 13-32, 2017.
EXPLORE+
Acesse o site do TinkerCad, explore os recursos, tente fazer exemplos e aprenda mais sobremodelagem geométrica de sólidos.
CONTEUDISTA
Sérgio Assunção Monteiro
 CURRÍCULO LATTES
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);

Continue navegando