Buscar

Computação Gráfica - Aula 3

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 51 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 51 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 51 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

O que é Computação Gráfica?
É uma ferramenta não convencional que permite ao artista transcender das técnicas tradicionais de desenho ou modelagem.
Segundo a ISO – (International Organization for Standardization), a definição de Computação Gráfica é: Um conjunto de ferramentas e técnicas para converter dados para ou de um dispositivo gráfico através do computador.
Linha do Tempo
1950 – Whirlwind – MIT: Finalidade acadêmica, Informações de radar em imagens, Tubo de raios catódicos.
	1959 - Surge o termo “Computer Graphics”.
	1962 - Ivan Sutherland publica a tese Sketchpad - A Man-Machine Graphical Communication System que apresentava técnicas de interação que usavam o teclado e a caneta ótica para desenhar, apontar e escolher alternativas.
	1965 - A GM desenvolve o precursor dos programas de CAD (Computer Aided Design) que no final da década de 60 praticamente dominaria toda a indústria automobilística e aeroespacial.
	Década de 70 - Desenvolvimento de algoritmos utilizados até hoje como o z-buffer, Pong – Atari Como exemplo da década de 70, Barateamento das máquinas levou ao aparecimento do primeiro computador com interface visual, Reconhecimento da C.G como área da Computação, Aparecimento de congressos (SIGGRAPH) e livros (fractais)
	Década de 80 - Publicação de imagem de erupção vulcânica no espaço,
	Uso de técnicas para melhorar imagens, Redução de ruídos, melhoria de contraste, etc, Surgimento de técnicas de iluminação como rey-trecing, aproximar imagens reais às dos computadores, Simulação de expressões faciais,
	Década de 90 - Amadurecimento da C.G e Filmes com perfeição de fotorrealismo
Síntese de Imagens
· Considera a criação sintética das imagens.
· Cria as representações visuais de objetos a partir das especificações geométricas e visuais de seus componentes.
Percepção Tridimensional
Entender a forma como percebemos a profundidade em imagens 2D:
1. Evita erros na confecção da imagem;
2. Possibilita uma interação amigável com objetos em ambientes virtuais;
3. Limitação tecnológica que nos fará usuários (por ainda muito tempo), de telas de computador com imagens 2D.
Segundo Stuart (1996), há três categorias de estímulos visuais usados pelo cérebro para formar uma imagem 3D:
Informações monoculares; Informações óculo-motoras; Informações estereoscópicas
Informações monoculares
Inerentes à imagem formada na retina.
Também chamada de “informações de profundidade na imagem” ou “informações estáticas de profundidade”. 
Exemplos:
Perspectiva
· Resultado da aparente diminuição dos tamanhos e das distâncias entre os objetos, à medida que o observador se distancia destes;
· Largamente usado para expressar cenas 3D em superfícies planas (papel, monitor);
· Descoberta da visão estereoscópica.
· “Um olho vê a cena”
Conhecimento Prévio do Objeto
1. Serve tanto para determinar a distância absoluta a partir do observador, quanto às distâncias relativas entre os objetos;
1. Noção de profundidade em objetos conhecidos;
1. Pode ser problema em objetos desconhecidos.
Oclusão
· Informação da posição relativa dos objetos;
· Também chamado de interposição ou interrupção de contorno;
· Obstrução da visão de um objeto por um outro que está mais próximo do observador e sobre uma mesma direção de visão;
· Quando um objeto A obscurece um objeto B, o cérebro sabe que o objeto A está mais próximo do que o objeto B.
Densidade das Texturas
· Baseia-se no fato de que muitos objetos possuem em sua aparência algum tipo de padrão com certa regularidade;
· À medida que os padrões aparecem mais densos e menos detalhados, mais distantes estarão do observador;
· Percepção de Movimento: movimento de esferas.
Variação da Reflexão da Luz
A mudança na intensidade da luz refletida ao longo de uma superfície de um objeto fornece informações sobre a forma e a curvatura da superfície desse objeto.
Sombras
Determinação da posição de um objeto em relação a um piso colocado abaixo deste.
Informações óculo-motoras
Acomodação
· Os músculos dos olhos relaxam ou contraem para mudar o formato do cristalino (as lentes dos olhos).
· Fazemos isso inconscientemente com o objetivo de alterar o foco dos objetos projetados na retina em função da distância desses objetos do observador.
Convergência
· A convergência é o giro dos olhos na direção interna (do nariz).
· Fazemos isso para melhorar a visualizar um objeto mais próximo.
Informações Estereoscópicas
Os olhos estão posicionados em lugares diferentes e por isso cada olho vê uma imagem diferente. Essa diferença, que é chamada disparidade binocular, é utilizada pelo cérebro para obter a distância relativa dos objetos.
Percepção Tridimensional
· Cientes do processo de formação da imagem e de sua utilização pelo cérebro.
· Podemos perguntar: Como fornecer uma sensação de Tridimensionalidade?
· O sistema deve gerar, ao mesmo tempo, duas imagens diferentes, correspondendo às visões de cada um dos olhos.
Processo de Geração da Imagem
Construção do Modelo da Aplicação:
Modelo: Coleção de dados representando objetos (físicos ou abstratos) e relações, bem como de operações que ajudam a definir a sua estrutura e/ou comportamento.
Descrevemos este modelo em termos de primitivas gráficas (pontos, segmentos de reta, polígonos etc.) em vez de estruturas de dados próprias da Aplicação (automóvel, avião, casa, mesa, histograma etc.).
Dispositivo Vetorial
· Normalmente, as imagens apresentadas por esse tipo de dispositivo são definidas através de primitivas geométricas como pontos, segmentos de retas, polígonos etc.
Dispositivo Raster
· Dispositivos gráficos podem ser pensados como matrizes de pixels (rasters).
Rasterização é o processo de conversão entre representações vetorial e matricial.
Gráficos em um dispositivo raster
· A qualidade de uma imagem exibida em um dispositivo raster aumentará com o aumento da resolução do display.
· Quanto maior a resolução, maior a quantidade de pixels para desenhar o gráfico.
· Quanto maior a quantidade de pixels, mais “suave” e “contínua” será a imagem.
· A qualidade de uma imagem exibida em um dispositivo raster diminuirá com o aumento da resolução da imagem, pois o aumento da resolução de uma imagem faz com que pixels inexistentes devam ser “criados” para serem inseridos na nova imagem.
Construção de um Segmento de Reta
Um segmento de reta é, na verdade, formado por um conjunto de pontos (ou pixels).
O objetivo é pintar os pixels atravessados pelo segmento de reta.
Algoritmo de Bresenham
Algoritmo clássico da computação gráfica que utiliza apenas soma e subtração de inteiros. Sua ideia básica admite que pixels variam de x1 a x2 e de y1 a y2.
O algoritmo inicia-se em x1 e percorre pixel a pixel em direção a x2, onde a cada mudança em X, o algoritmo tem que decidir se o próximo pixel vai ter coordenadas (x + 1, y) ou (x + 1, y + 1).
Esta decisão requer somente que se avalie onde a linha passa: acima ou abaixo do ponto médio (x + 1, y + ½). Se a linha passou abaixo do ponto médio o pixel pintado será (x+1, y) caso contrário (x + 1, y + 1).
Bresenham (inteiro: x1, y1, x2, y2, cor);
	a ← y2 – y1
	b ← x1 – x2
	V ← 2 * a + b
	x ← x1
	y ← y1
Enquanto x ≤ x2 faça
Pintar pixel (x, y, cor)
	x ← x + 1
Se V ≤ 0
Então V ← V + 2 * a
Senão V ← V + 2 * (a + b); y ← y + 1c
Círculos
Para desenhar círculos, adotamos a mesma ideia de avaliar incrementalmente uma função que classifica o ponto médio entre um pixel e outro com relação a uma função implícita.
Sabendo que o círculo possui octantes (8 “fatias”) simétricas, precisamos calcular apenas os pontos de uma octante e para cada ponto calculado pintamos mais 7 pontos adicionais utilizando a simetria dos octantes.
Preenchimento de Regiões
Esse algoritmo tem por objetivo pintar uma região de uma figura. Não é propriamente rasterização uma vez que operação se dá no espaço da imagem.
O algoritmo utiliza o conceito de regiões que são definidas por critérios de vizinhança a um dado pixel (semente). Esse algoritmo é conhecido como “Flood Fill”.
Como podemos notar no quadro abaixo o algoritmo é recursivo e preenche osvizinhos da semente sempre que atendem ao critério (possuírem a mesma cor) tornando esses pixels em semente da próxima chamada recursiva. O algoritmo termina quando nenhum vizinho atende ao critério.
procedure FloodFill (x, y, cor, novaCor)
	Se pixel (x, y) = cor então
		pixel (x, y) ← novaCor
		FloodFill (x + 1, y, cor, novaCor)
		FloodFill (x, y + 1, cor, novaCor)
		FloodFill (x - 1, y, cor, novaCor)
		FloodFill (x, y - 1, cor, novaCor)
Transformações geométricas
As transformações geométricas são operações que podem ser utilizadas visando a alteração de algumas características como: posição, orientação, forma ou tamanho do objeto.
Matrizes
Todas as transformações geométricas podem ser representadas na forma de equações, o que gera dificuldades à manipulação de objetos gráficos, pois envolvem muitas operações de aritmética simples.
Para resolver este problema, a adoção de matrizes é uma excelente opção, pois matrizes são mais fáceis de usar e entender do que as equações algébricas.
Padrão de coordenadas
· Pontos no plano (x,y)
· Matrizes 2x2
Pontos no espaço tridimensional (x,y,z)
· Matrizes
· 3x3
Matriz de transformação
· Várias transformações combinadas
Representações
Dado um sistema de coordenadas, pode-se definir elementos neste sistema através de suas coordenadas. Caso o sistema seja 2D, pontos são definidos por duas coordenadas.
Define-se um ponto pela sua distância em relação ao centro dos eixos.
	(2,1) — 2 unidades distante de x = 0
	— 1 unidade distante de y = 0 
Convencionalmente, representa-se um ponto na forma de um vetor linha ou vetor coluna. Também corresponde à forma mais simples de representação de uma matriz (linha ou coluna).
O par pode servir para representar tanto o ponto quanto o vetor em si.
Sistema de coordenadas
Podemos utilizar diferentes sistemas de coordenadas para descrever os objetos modelados em um sistema 2D. Esses sistemas servem para nos dar uma referência de tamanho e posição dos objetos. Coordenadas Esféricas, Coordenadas Polares, Coordenas Cilíndricas.
Sistema de referência
Sistema de coordenadas cartesianas para alguma finalidade específica formado por:
· Unidade de referência básica;
· Limites extremos dos valores aceitos para descrever os objetos.
Sistemas com denominação especial
· Sistema de Referência do Universo (SRU)
· Sistema de Referência do Objeto (SRO)
· Sistema de Referência Normalizado (SRN)
· Sistema de Referência do Dispositivo (SRD)
Sistemas de Referência do Universo (SRU)
Sistema de referência utilizado para descrever os objetos em termos das coordenadas utilizadas pelo usuário em determinada aplicação, é também chamado coordenadas do universo, ou do mundo. Exemplo:
Sistemas CAD de arquitetura - o universo em metros ou centímetros.
Sistemas CAD de mecânica de precisão - o universo em milímetros ou nanômetros.
Sistemas de Referência do Objeto (SRO)
Cada objeto possui um miniuniverso individual que serve de base para descrever as suas particularidades em função de seu sistema.
O centro deste sistema costuma coincidir com o centro de gravidade do objeto. Na modelagem de sólidos, este centro é conhecido como pivô.
Sistemas de Referência do Normalizado (SRN)
Funciona como um sistema de referência intermediário entre o SRU e o SRD, tendo como função principal: tornar a geração das imagens independente do dispositivo.
Coordenadas do universo são convertidas para um sistema de coordenadas padrão normalizado.
Esse sistema trabalha com coordenadas normalizadas, em 2D:
Sistemas de Referência do Dispositivo (SRD)
Utiliza coordenadas que podem ser fornecidas diretamente para um dado dispositivo de saída. Exemplo:
Número de pixels de monitores:
· 640×480;
· 800×600.
Transformações geométricas
A habilidade de representar um objeto em várias posições no espaço é fundamental para compreender sua forma.
A possibilidade de submetê-lo a diversas transformações é muito importante para aplicações em CG, podendo ser aplicadas em 2D ou 3D.
Os tipos principais são:
Translação
Transladar significa movimentar o objeto, mas como é possível movimentar um objeto completo?
Um objeto é formado por pontos, então, para movimentar um objeto, basta movimentar os pontos que compõem o mesmo.
Como os pontos de um objeto podem ser representados em um sistema de coordenadas, basta adicionar a esses pontos o valor do deslocamento.
Formalização 2D
Imagine um ponto (x, y) que representa um objeto.
Pode-se mover este objeto Tx unidades em relação ao eixo x.
Pode-se mover este objeto Ty unidades em relação ao eixo y.
A nova posição é representada por (x’, y’) e pode ser escrita como:
	x, = x+Tx
	y, = y+Ty
	
	ou
	P' = P+T 
	[x' y'] = [x y] + [Tx Ty]
	(Representação na forma de vetores (soma de dois vetores)
Formalização 3D
Também é possível representar a translação em um espaço 3D.
	x, = x+Tx
	y, = y+Ty
	ou
	P' = P+T 
	[x' y'] = [x y] + [Tx Ty]
	Representação na forma de vetores (soma de dois vetores)
Escala
Escalonar significa mudar as dimensões de escala, mas como é possível escalonar um objeto completo?
Basta multiplicar os valores de suas coordenadas por um fator de escala, ou seja, cada um dos vetores que compõem o objeto é multiplicado por um mesmo fator de escala.
Formalização 2D
Imagine um ponto (x,y) que representa um objeto.
Pode-se escalonar um objeto no eixo x aplicando um fator de escala Sx a este ponto
Pode-se escalonar um objeto no eixo y aplicando um fator de escala Sy a este ponto.
O novo valor de suas coordenadas é representado por (x’, y’) e pode ser escrito como:
	x' = x*Sx
	y' = y*Sy
Formalização 3D
Também é possível representar a translação em um espaço 3D.
	x'=x*Sx
	y'=y*Sy
	z'=z*Sz
Para aplicar uma escala em um objeto, é necessário que o objeto esteja na origem dos eixos, caso contrário, essa operação de multiplicação também fará com que o objeto translade, conforme podemos observar na figura.
Rotação
Rotacionar significa girar. A seguir são apresentados exemplos de rotação, a figura apresenta a rotação de um único ponto P, enquanto a figura apresenta a rotação de um objeto.
Formalização 2D
Imagine um ponto (x, y) que representa um objeto.
Pode-se rotacionar um objeto no plano xy de um dado ângulo θ utilizando-se as expressões obtidas no slide anterior.
O novo valor de suas coordenadas é representado por (x’, y’) e pode ser escrito como:
	x'=x*cosθ − y*senθ
	y'=y*cosθ − x*senθ
Para aplicar uma rotação em um objeto, é necessário que o objeto esteja na origem dos eixos, caso contrário, essa operação também fará com que o objeto translade.
Rotação em torno de um ponto
Para rotacionar um objeto em torno de um dado ponto, precisamos seguir os seguintes passos:
· Transladar este ponto para a origem dos eixos.
· Efetuar a rotação.
· Transladar o ponto para sua posição original.
Conforme podemos ver na figura.
Rotação 3D
É possível aplicar a rotação em qualquer plano (xy, yz, xz) conforme podemos observar na figura.
Composição de transformações geométricas
Pode-se criar uma transformação geométrica através da composição de várias outras. No exemplo a seguir queremos aplicar as transformações geométricas descritas na figura.
Constructive Solid Geometry (CSG)
Constructive solid geometry (CSG) é uma técnica utilizada em modelagem de sólidos, geralmente aplicada em ambientes de computação gráfica 3D. 
A CSG permite que o modelador crie objetos complexos utilizando operadores booleanos para combinar objetos, facilitando a aplicação de operações matemáticas difíceis de serem executadas com malhas poligonais.
Primitivas 3D
São objetos sólidos mais simples utilizados para representação como: esfera, caixa, cilindro, cone.
Objetos complexos
Os objetos mais complexos podem ser construídos a partir de primitivas através da aplicação de operadores booleanos, como união, interseção, diferença e combinação.
Operador de União
O operador de união deve ser utilizado quando se deseja combinar dois objetos em um só.
O operador também é útil quando se deseja: Aplicar a mesma textura aos dois objetos.
Transformar ambos os objetos com umsó comando.
Operador de combinação (merge)
A operação de merge deve ser utilizada quando se deseja combinar dois objetos em um só, excluindo as partes dos objetos que ficaram internas.
· É útil para objetos transparentes.
· Os objetos opacos podem ser combinados com a união, já que é uma operação mais rápida.
Operação de diferença
A operação de diferença deve ser utilizada quando se deseja remover partes de um objeto, cavando formas nele.
O primeiro objeto é aquele de onde serão removidas as partes especificadas por outros objetos que vêm a seguir. Qualquer parte do objeto original que esteja dentro dos outros objetos é removida, a cor da parte removida fica a mesma do objeto que a removeu.
			UNIÃO						DIFERENÇA
Operação de intersecção
A operação de intersecção captura todos os pontos que estão contidos em todos os objetos especificados.
Diferentemente da diferença, a interseção “joga fora” as partes do objeto que estão fora da interseção com os objetos seguintes.
Árvore CSG
A estrutura que representa um sólido CSG é uma árvore em que as operações booleanas utilizadas para construí-lo são hierarquizadas.
Tal estrutura é chamada de árvore CSG.
Cada uma das operações utilizadas é representada por um nó interno (não folha) da árvore, e cada primitiva por um nó folha.
Os nós de uma árvore são organizados de forma que a operação relativa a um nó interno tenha sido aplicada aos sólidos obtidos a partir de seus nós filhos.
Assim, uma árvore CSG estará organizada conforme a ordem em que as operações booleanas foram aplicadas, de forma que quanto mais rasos são os nós de uma árvore (mais próximos da raiz), mais recentes serão as operações correspondentes.
Zbrush
Pinceis 3D
Polypaint
Ilustração (esculturas em 2.5D)
Transpose (animação de esqueleto, movimentação de partes isoladas do modelo)
Zspheres (Criação de malhas simplificadas)
Maya
Simulador de fluídos
Simuladores específicos para Roupa
Curvas dinâmicas (cabelo e pelos realistas)
3D Max
Linguagem de Scripts
Animação de personagens
Explorador de cenas
Importação de arquivos DWG
Associação e edição de texturas
Animação por key frames
Curvas
As curvas são importantes para a criação de objetos e a visualização de fenômenos científicos, servindo de base para modelagem de objetos simples, como círculos e elipses, e de objetos complexos, como automóveis, aeronaves e navios.
Representação
Uma curva simples pode ser definida apenas por uma sucessão de linhas. 
Curvas mais complexas irão demandar uma maneira mais eficiente de representação. Formalmente, as curvas podem ser representadas de diversas formas:
Por um conjunto de pontos
Uma curva pode ser representada por um conjunto finito de pontos, podendo ser representada por um número grande de pontos ou pela conexão deles por segmentos adequados.
	Conjunto de pontos.				Pontos conectados.
No caso de uma quantidade limitada de pontos, pode-se utilizar retas para conectá-los, para alcançar uma suavidade maior, pode-se acrescentar uma maior quantidade de pontos.
Curva gerada com poucos pontos.		Curva gerada com muitos pontos.
Através de sua Representação Analítica
A representação analítica utiliza uma ou mais equações.
Vejamos algumas vantagens:
· É mais precisa;
· Não requer área de armazenamento;
· Facilita o cálculo de novos pontos;
· É mais fácil obter propriedades da curva (inclinação, área).
Pode ser:
Não paramétrica
Paramétrica
Vamos entender cada uma dessas categorias.
Categorias: Não paramétricas
A forma não paramétrica não recebe parâmetros, sendo calculada através de uma equação de y em x (ou vice-versa):
Certas curvas, chamadas de seções cônicas, podem ser obtidas a partir do corte de um cone por um plano.
Categorias: Paramétricas
Na forma paramétrica, usa-se um parâmetro para definir as coordenadas dos pontos da curva, onde a posição do ponto na curva é definida com base no valor do parâmetro.
			X=10  cosθ=fx (θ)           X=t+1=fx (t)
			Y=10  senθ=fy (θ)           Y=2t+1=fy (t)
				Representação paramétrica
Formalmente, a posição de um ponto na curva é dada por:
				Representação de um ponto na curva.
Paramétrica de terceira ordem
Algumas curvas não podem ser facilmente descritas por expressões analíticas em toda sua extensão. Para isso, o objeto representado passa a ser formado pela união de diversas curvas.
Essa solução trouxe como novo problema a continuidade das conexões, que foi solucionado com a adoção de curvas representadas por polinômios cúbicos.
Muito conhecidas pelos usuários da CG, as curvas paramétricas de terceira ordem são geradas por um polinômio cúbico e pela definição de um conjunto determinado de pontos de controle, suas abordagens mais conhecidas são:
Hermite
Bézier
Splines
Hermite
Representação criada por Charles Hermite (1822 – 1901) que faz uso de polinômios de terceira ordem e quatro fatores:
Permite um maior controle da representação, sendo capaz de gerar formas suaves e homogêneas e formas bruscas, loops, pois os módulos de T1 e T2 funcionam como pesos na determinação da curva.
Bézier
A curva de Bézier está contida no fecho convexo do polígono de controle. A curva interpola o primeiro e o último ponto do polígono de controle e utiliza quatro fatores:
Sendo uma curva que possui controle global, ou seja, movendo-se a posição de um só ponto, toda a forma da curva se modifica.
Splines
A base de Bézier não é própria para a modelagem de curvas longas, pois possui suporte global e as restrições nos trechos emendados não são naturais.
Com alternativa a esse problema surge a solução: B-Splines.
Modelagem por polígonos de controle sem restrições adicionais, ou seja, o grau do polinômio independe do número de pontos de controle, a curva não passa pelos pontos de controle, o controle da curva é local (alteração de um vértice afeta a curva apenas na vizinhança).
Comparativo
A figura abaixo apresenta uma curva modelada pelas três abordagens.
Comparação entre curvas.
Superfícies
As superfícies são muito importantes para a computação gráfica, pois grande quantidade de elementos gráficos é formada através de superfícies.
Uma superfície (como uma curva) pode ter representação analítica ou ser gerada por famílias de conjuntos de pontos. Podemos ainda interpolar, ajustar ou aproximar superfícies a partir de pontos, pois essa forma de geração de objetos por seus contornos é muito importante na modelagem geométrica.
Representação analítica
Assim como as curvas, superfícies representadas de forma analítica são obtidas através de uma equação.
Exemplos de objetos formados por superfícies.
As curvas bem conhecidas e usadas na C.G. também podem ser utilizadas para gerar superfícies.
Exemplos de objetos formados por superfícies.
Representação analítica de superfícies geradas por rotação
Uma curva pode ainda ser rotacionada em torno de um eixo para produzir a família mais conhecida de superfícies (sólidos de revolução ou superfícies de revolução).
A figura [ao lado] apresenta um segmento de reta girando 360º em torno do eixo z e produz a seguinte superfície cônica:
Representação por conjunto de pontos
Uma forma muito tradicional (e bastante utilizada por tecnologias como OpenGL) de definir superfícies é através da simples representação de seus pontos e conexão dos mesmos. 
Os pontos podem ser conectados de diversas formas, gerando malhas que definem um conjunto de polígonos como triângulos ou quadriláteros. Estes conjuntos de arestas formam as faces.
As formas principais de conexão de polígonos utilizando triângulos são:
Representação por conjunto de pontos
Também é possível conectar polígono utilizando um conjunto de quadriláteros. Os quadriláteros podem ser especificados separadamente ou conectados.
Imagem 3D
Processo de visualização de uma imagem
1.Construir a cena em coordenadas do mundo, desenhando linhas e figuras geométricas e definindo o tipo de pintura dos objetos.
2.Calcular a projeção geométrica do objeto (de 3D para 2D).
3.Converter as coordenadas do mundo para as coordenadas do dispositivo.
4.Recortar a imagem de acordo com a área deviewport disponível no dispositivo de saída.
5.Opcionalmente podem-se efetuar transformações geométricas (translação, rotação e escala).
6.Pintar e efetuar o acabamento na imagem, no dispositivo de saída.
A maioria destas ações são executadas automaticamente pelo ambiente de desenho/modelagem. Nos softwares atuais, o programador apenas especifica alguns parâmetros de configuração da câmera sintética, como: Posição, Orientação, Centro de interesse, Campo de visão (ângulo de abertura), Tipo de projeção e Planos próximo e distante.
A maioria destas ações são executadas automaticamente pelo ambiente de desenho/modelagem.
Nos softwares atuais, o programador apenas especifica alguns parâmetros de configuração da câmera sintética, como:
Visualização 3D
O processo de visualização 3D é similar ao processo de fotografar!
Transformação de Visualização
Posicionamento e orientação da câmera fotográfica.
Projeção
· Controle as lentes da câmera fotográfica;
· Projete o objeto do mundo 3D para a tela 2D do seu monitor.
Transformação de Visualização
Uma câmera básica possui os parâmetros apresentados na figura, onde:
1. Posição define o local da câmera em relação à cena;
2. Centro de Interesse define o local para onde a câmera está apontada;
3. Campo de Visão delimita a área da cena a ser visualizada;
4. Orientação define a posição da câmera
5. Projeção define o processo pelo qual um objeto 3D é convertido em um objeto 2D;
Projeções
Processo pelo qual um objeto 3D é convertido em um objeto 2D. São classificadas em:
Campo de Visão
Determina que porção do mundo será mapeada na cena.
Exemplos:
A figura [a esquerda] apresenta uma imagem gerada com um campo de visão de 45º enquanto a figura [a direita] apresenta uma imagem com campo de visão de 120º.
Note que, quanto maior é o campo de visão, menor é o tamanho da projeção do objeto.
Planos Próximo e Distante - Recorte
Somente objetos entre os planos próximo e distante são desenhados.
Frustum de Visualização
É a porção de um sólido (normalmente um cone ou uma pirâmide) que se encontra entre dois planos paralelos que o cortam.
Esse termo é comumente usado na área de Computação Gráfica para descrever uma região 3D que é visível na tela.
Plano próximo + plano distante + campo de visão = Frustum de visualização.
Animação
Origens
Historicamente falando, tem mais de 100 anos (inventada em 1831 por Joseph Antonie Plateau).
Semanticamente falando, “animação” deriva do verbo latim animus, que significa dar vida a personagens.
Definição
Animação corresponde à construção, armazenamento, gravação, e exibição de imagens gráficas que produzam movimento durante o tempo.
Corresponde ainda, à mudança de posição, forma, cor, transparência, estrutura e textura de um objeto, alteração dos parâmetros de câmera e da iluminação.
Etapas da animação
Quadros de animação
Há dois tipos de quadros em uma animação:
1)KEYFRAMES
Quadros-chaves da animação;
2) INBETWEENS
Quadros intermediários da animação, gerados pela interpolação dos quadros-chave
Sonorização
Na animação convencional, a trilha sonora deve preceder o processo de criação das imagens, visto que o movimento deve estar sincronizado aos diálogos, efeitos especiais, e música de fundo.
Processo tradicional de animação
PROCESSO DE ANIMAÇÃO AUXILIADO POR COMPUTADOR
ANIMAÇÃO MODELADA POR COMPUTADOR
Tipos de Objetos
A animação é descrita em termos dos graus de liberdade.
Grau de liberdade: número de coordenadas livres e distintas, necessárias para que as posições dos componentes do sistema sejam especificadas no tempo, ou seja, a capacidade de informar a orientação e a posição de um ponto no espaço.
Partículas
· Ponto (x,y,z) no espaço;
· 3 graus de liberdade (x,y,z translações), ou seja, 3 números necessários para definir cada quadro da animação, ou seja, 3 funções descritoras da variação x, y, e z no tempo.
Corpos Rígidos
· Pontos que se movem juntos no espaço, definindo polígonos ou superfícies de geometria livre;
· 6 graus de liberdade (x, y,z) translações e (x,y,z) rotações.
Corpos Flexíveis
· Compostos por um número infinito de pontos que se movem relativos a si próprios no tempo;
· Compostos por vértices de polígonos, superfícies de forma livre.
Corpos Articulados
· Compostos por segmentos e juntas cujo movimento relativo é restrito/limitado;
· Podem ser flexíveis;
· Grau de liberdade dependente da junta observada.
Corpos Definidos Algebricamente
Exemplo:
Esferas (por meio de funções/equações).
Corpos em Metamorfose
Objetos podem ser especificados algebricamente.
Exemplo:
Esfera modelada como um centro (x, y, z) e um raio. Uma esfera pulsante pode ser animada modificando-se o valor do raio.
Métodos de relacionamento aos objetos 3D
Os métodos se resumem em:
Projeção de visualização
PERSPECTIVA - Simula a aparente diminuição dos objetos à medida que os mesmos se distanciam da câmera;
ORTOGRAFICA OU PARALELA - O efeito de aparente diminuição dos objetos a medida que os mesmos vão se distanciando da câmera não ocorre;
FISHEYE - Projeção Esférica;
ULTRA WIDE ANGLE PROJECTION – similar ao fisheye, mas projeta a imagem sobre um retângulo ao invés de um círculo;
PANORAMIC PROJECTION – Utiliza certo tipo de projeção cilíndrica para ser capaz de visualizar ângulos superiores à 180º;
CYLINDRICAL PROJECTION – As cenas são projetadas sobre um cilindro;
SPHERICAL PROJECTION – A cena é projetada sobre uma esfera.
Concept Art
Definição
Concept Art é uma forma de ilustração em que o principal objetivo é transmitir uma representação visual de um projeto, ideia e/ou disposição para uso em filmes, jogos de vídeo, animação ou quadrinhos antes que ele seja colocado no produto final.
É uma forma de arte cujo objetivo principal é ilustrar uma ideia, uma representação de design.
As ilustrações em modo geral não seguem muitas regras, mas elas devem ser claras e consistentes o suficiente para passar uma ideia de qualquer elemento do jogo, podendo ser desde um personagem, um ambiente e objetos de cenário, ou até uma ilustração que não represente algum objeto do jogo, mas sim a ambientação do jogo.
Aplicação
Apesar de ser mais comum no cinema, na produção de desenhos animados e storyboards, a Concept Art não está restrita a um gênero apenas.
Trata-se de uma forma de ilustração conceitual que integra o processo criativo na hora de conceber um game. É por ela que tudo começa. Com o roteiro escrito em mãos, o desenho vai retratar de forma imagética o ‘clima’ do jogo, com esboços do que serão os personagens, figurinos, cenários e quaisquer objetos ou detalhes.
O trabalho nas grandes empresas começa com uma descrição que, em geral, o diretor de arte recebe do diretor do jogo e esse em sequência passa para o ilustrador.
1. Tenha a ideia tornando-a clara;
2. Descrever o elemento a ser desenhado.
Além de ajudar no processo, é importante guardar esse arquivo para referências futuras.
Processo produtivo
Para fazer jogos, é necessário um alto nível de habilidade técnica e, acima de tudo, visão e mente criativa.
O resultado final é reflexo de muita pesquisa, desde mitologias a referências artísticas das mais variadas épocas, e criatividade, inspirando a minuciosidade do trabalho do design gráfico.
Envolve leitura, resgate de ideias utilizadas em manifestações culturais do passado e do presente. O trabalho é feito em sincronia com a Direção de Arte, responsável pela aparência visual da obra. Os desenhos não seguem à risca traços detalhados ou bem definidos. Muito pelo contrário. Podem ser manchas, seguindo o estilo abstrato, até colagens com fotos ou outros recursos.
Além da arte visual e do roteiro, já destacados acima, games precisam de modelagem de esculturas, composição de cenários, trilha sonora e, claro, programação para que ele possa, enfim, ser gerado. A junção de todas essas peças é sustentada pela Concept Art.
Geralmente, esse tipo de trabalho é mais visado depois do lançamento do game. No entanto, a artwork pode ser considerada a chave para a produção de um game, a verdadeira linha de frente, inspirandoe direcionando para o enredo que deve seguir, além de dar estilo ao jogo.
Os sprites foram inventados originalmente, baseados nos exemplos vistos, como um método rápido de animação de várias imagens agrupadas numa tela em jogos de computador bidimensionais sem consumir de forma ostensiva o poder de processamento das máquinas. 
Com o surgimento das GPUs e a melhoria de desempenho do hardware envolvido, esta otimização tornou-se desnecessária e o termo evoluiu para referir-se especificamente às imagens bidimensionais que eram integradas em uma determinada cena, ou seja, todas as figuras geradas eram todas referenciadas como sprites. 
À medida que gráficos tridimensionais se tornaram mais comuns, o termo passou a descrever uma técnica elementar de simulação de imagens em 2.5D ou 3D que prescinde do uso de renderizações complexas.
HUD
Um display head-up ou heads-up display (HUD) é qualquer visor transparente que apresenta os dados sem que os usuários de desviar o olhar de seus pontos de vista usual.
A origem do nome deriva das capacidades dos pilotos de visualizar as informações com a cabeça "para cima" e olhando para a frente, ao invés de angulado para baixo à procura de instrumentos menores.
Apesar de terem sido inicialmente desenvolvido para a aviação militar, os HUDs são usados em aviões comerciais, automóveis e outras aplicações.
Origens
Os primeiros HUDs foram criados a partir da tecnologia utilizada nas miras estáticas dos aviões de combate. HUDs rudimentares foram projetados para auxiliar os atiradores. Com a evolução dos HUDs mais e mais informações complexas foram adicionadas.
Assim os HUDs logo passaram a exibir soluções de tiro computadorizadas utilizando informações tais como velocidade e ângulo de ataque, aumentando a precisão dos pilotos nos combates aéreos.
Um dos primeiros exemplos de HUD foi o sistema de projeção do radar de interceptação britanico AI Mk VIII montados em caças noturnos, onde a tela de radar era projetada no para-brisas da aeronave, permitindo aos pilotos realizar intercepções sem tirar os olhos do para-brisas.
Geraçõess
Os HUDs são divididos em quatro gerações que refletem as tecnologias empregadas na geração de imagens.
Jogos eletrônicos
Em jogos, o HUD é o método pelo qual a informação é visualmente transmitida para o jogador como parte de uma interface de jogo com o usuário.
O HUD é frequentemente usado para exibir simultaneamente vários pedaços de informações, incluindo a vitalidade do personagem principal, itens e indicações como pontuação ou nível.
Embora a informação que é exibida no HUD dependa muito do jogo, existem muitas características que os jogadores reconhecem como características comuns, que incluem:
Saúde / vidas
Isso pode incluir o caráter do jogador e, possivelmente, outros personagens importantes, como aliados ou Chefes (boss).
Tempo
Esta pode ser a contagem regressiva do tempo do turno, ou da missão. Ou, pode ser um temporizador de contagem como tempos de volta em jogos de corrida, ou o comprimento de tempo que um jogador pode durar em jogos baseados em sobrevivência.
Armas Munição
A maioria dos jogos de ação mostram que arma está sendo usada, e também a quantidade de munição disponível.
Menus
Menus para diversas ações.
Mini-mapa
Um pequeno mapa da área que pode atuar como um radar, mostrando o terreno, aliados e / ou inimigos, locais como casas seguras, lojas e ruas.
Perguntas e Respostas:

Continue navegando