Upload
keiki
View
28
Download
0
Embed Size (px)
DESCRIPTION
24T12 – Sala 3F5 Bruno Motta de Carvalho DIMAp – Sala 15 – Ramal 327. Visualiza ção e Projeçõ es I. Introdução. História Vasos gregos do século 6 já exibem perspectiva Em projeções perspectivas, linhas paralelas convergem (em 1, 2 ou 3 eixos) para um ponto de fuga - PowerPoint PPT Presentation
Citation preview
DIM102 1
Visualização e Projeções I
24T12 – Sala 3F5
Bruno Motta de Carvalho
DIMAp – Sala 15 – Ramal 327
DIM1022
Introdução
História Vasos gregos do século 6
já exibem perspectiva Em projeções
perspectivas, linhas paralelas convergem (em 1, 2 ou 3 eixos) para um ponto de fuga
Objetos mais distantes são mais reduzidos (foreshortening) que objetos mais próximos
Linhas paralelas convergindo
Arestas de mesmo tamanho tem tamanhos aparentes diferentes
DIM1023
História
Brunelleschi criou um método para criação de projeções perspectivas no início do século 15
“Uma pintura [o plano de projeção] é a interseção de uma pirâmide visual [volume de visão] a uma determinada distância, com um centro fixo [centro de projeção] e uma posição definida de iluminação, representada na arte por linhas e cores em uma determinada superfície [a renderização].” (Leono Battista Alberti (1404-1472), On Painting, pp. 32-33)
DIM1024
Projeções
Necessidade em se representar o mundo 3D em uma imagem 2D (plano de projeção)
Projeção: abstração geométrica, um mapeamento
Objetos no mundo 3D são recortados contra um volume de visão 3D, projetados em um plano de projeção e mapeados no viewport (coordenadas 2D do dispositivo) para desenho
nmf mn ,:
DIM1025
Sistemas de Coordenadas
Resultado de transformações Convenções em pipelines gráficos
objeto/modelagemmundocâmera/visãoJanela/screen/windowraster/dispositivo
DIM1026
Tipos de Projeções
Projeção 2D de um objeto 3D é definida por raios de projeção (projetores) que emanam de um centro de projeção, passam por cada ponto do objeto e intersectam o plano de projeção
Projeções planares Projeções paralelas (centro de projeção no
infinito) ou perspectivas Definindo projeções – especifica-se o centro de
projeção (perspectiva) ou a direção de projeção
DIM1027
Tipos de Projeção
projeprojeçõeçõessplanaresplanares
perspectivperspectivasas::1,2,3-p1,2,3-poontntosos
paralelparalelasas
obliquobliquasas ortogrortográfáficicasas
cabinetcabinet cavaliercavalier toptopoo,,frfreentntee,,ladolado
axonomaxonoméétrictricasas::isomisoméétrictricasasdimdiméétrictricasastrimtriméétrictricasas
DIM1028
Projeções
II
OrtográficaOrtográfica OblíquaOblíqua
Centro da projeção
II
II
ParalelasParalelas:: centro da projeção no centro da projeção no
PerspectivasPerspectivas
∞∞
DIM1029
Projective Rendering Pipeline
OCS – sistema de coordenadas do objeto WCS - sistema de coordenadas do mundo VCS - sistema de coordenadas de visão CCS - sistema de coordenadas de recorteNDCS - sistema de coordenadas
normalizadas DCS - sistema de coordenadas do
dispositivo
OCSOCS WCSWCS VCSVCS
CCSCCS
NDCSNDCS
DCSDCS
modelingmodelingtransformationtransformation
viewingviewingtransformationtransformation
projectionprojectiontransformationtransformation
viewportviewporttransformationtransformation
alteralteraa w w
/ w/ w
objeto mundo visão
dispositivo
normalizado
recorte
DIM10210
Viewing Transformation
OCSOCS WCSWCS VCSVCSTransformação Transformação
do objetodo objetoTransformação Transformação de visãode visão//câmeracâmera
modM camMOpenGL ModelView matrix
objeto mundo visão
DIM10211
Projection Comparison
OblíquasCavalierCabinet
AxonométricasIsométricasOthers
Perspectivas
DIM10212
Oblique Projections
xx
yy
zz
cavaliercavalier
dd
dd
xx
yy
zz
cabinetcabinet
dd
d/2d/2
Ambas têm visão frontal verdadeira cavalier: distância realcabinet: metade da distância
DIM10213
Projeções Axonométricas
DIM10214
Projeções Perspectivas
one-pointone-pointperspectiveperspective
two-pointtwo-pointperspectiveperspective
three-pointthree-pointperspectiveperspective
Classificadas de acordo com o número de pontos principais de fuga
DIM10215
Transformations Perspectivas Propriedades Linhas paralelas não permanecem
paralelas • Exemplo – estrada desaparecendo no infinito
Combinações afins não são preservadas. Exemplo – Centro de uma linha não mapeia para o centro da linha projetada
DIM10216
Câmera Virtual
Modelo de referência do programador para a especificação dos parâmetros da projeção para o computador Posição da câmera Orientação Campo de visão (ângulo aberto, normal…) Profundidade do campo de visão (plano frontal, plano
traseiro) Distância focal Inclinação da plano do filme (projeções oblíquas) Projeção perspectiva ou paralela (câmera próxima dos
dos objetos ou a uma distância infinita dos mesmos)
DIM10217
Volumes de visão
Um volume de visão contém tudo visível do ponto de vista e direção escolhidos. O que a câmera vê?
Volumes de visão cônicos aproximam o que nossos olhos veêm, mas encarecem a computação de recorte de objetos
Aproximação por um pirâmide truncada (chamada de frustum), que funciona bem com uma janela de visualização retangular e permite um recorte mais fácil
Volume de visualização perspectivo cônico
Aproximação do volume de visualização por um frustum
olho
câmeravirtual
DIM10218
Pipeline Visualização 3D• Viewport é a área retangular
da tela onde a cena é renderizada (que pode ou não preencher toda a tela)
• Janela em CG geralmente significa um retângulo de recorte 2D em um sistema de coordenadas 2D do mundo. Já viewport é uma região da tela em um sistema de coordenadas inteiro 2D para o qual o resultado da regiáo recortada é mapeado
• Viewport e plano do filme podem ter aspect ratios diferentes
DIM10219
Volumes de visão
Seis informações determinam o modelo da câmera virtual (neste caso)
A posição da câmera O vetor olhar-para (look) da
câmera (para onde a câmera esá apontando)
A orientação da câmera é determinada pelo vetor olhar-para e pelo ângulo de rotação da câmera ao redor deste vetor. O ângulo de rotação é dado pelo vetor vertical (up)
Vetor olhar-para
Vetor vertical
PosiçãoÂngulo de largura
Ângulo de altura
Plano de recorte frontal
Plano de recorte traseiro
DIM10220
Volumes de Visão
Aspect ratio do “filme”: razão da largura para a altura
O ângulo de altura determina quanto da cena caberá no volume de visão (ângulo de largura determinado pelo ângulo de altura e aspect ratio).
Os planos de recorte frontal e traseiro limitam a extensão da visão da câmera, renderizando somente as partes dos objetos que estão entre eles
DIM10221
Posição e Orientação
Posição é definida pelas coordenadas x, y e z da câmera no espaço 3D
Orientação é especificada por um ponto no espaço 3D ou uma direção para a qual se deve apontar a câmera e um ângulo de rotação ao redor desta direção
Orientação canônica (default) é olhando na direção negativa do eixo z e o vetor vertical apontando para cima no eixo y
Defaults variam de pacote para pacote, certifique-se dos valores iniciais de posição e orientação das câmeras
-z
z
y
x
Vetor vertical
Vetor olhar-para
Ponto referência
(x’, y’, z’)
Posição da câmera
DIM10222
Vetores Olhar-para e Vertical
Maneira mais natural de se definir orientação
Vetor olhar-para Pode ser qualquer vetor
em 3D Vetor vertical
Determina como a câmera é rotacionada ao redor do vetor olhar-para
Vetor olhar-para
Posição
Projeção do vetor vertical
DIM10223
Aspect Ratio
Similar ao tamanho do filme usado em uma câmera
Define a proproção da largura para a altura da imagem desenhada na tela
Janela quadrada tem um aspect ratio de 1:1 Telas de cinema tem um aspect ratio de 2:1 Televisôes PAL-M tem um aspect ratio de 4:3,
enquanto que HDTVs tem um aspect ratio de 16:9
DIM10224
Ângulo de Visão
Determina a quantidade de distorção perspectiva na imagem, de nenhuma (projeção paralela) a muita (lentes de ângulos largos)
Os ângulos de altura e largura definem o frustum, sendo que o ângulo de largura = ângulo de altura * aspect ratio
Equivalente ao fotógrafo escolhendo o tipo específico de lente
DIM10225
Planos de Recorte Frontal e Traseiro
Volume do espaço entre os dois planos define o que a câmera pode ver
Posição dos planos definidas pela distância na direção do vetor olhar-para
Objetos fora do volume de visão não são desenhados
Objetos que intersectam estes planos são recortados
Front clipping plane
Back clipping plane
DIM10226
Plano de Recorte Frontal
Porque se usa plano de recorte frontal? Desenhando objetos muito próximos da câmera
Poderia bloquear a visão do resto da cena Objetos poderiam ser distorcidos Evitar singularidades (divisão por zero, números muito
pequenos)
Não se deve desenhar objetos atrás da câmera No caso de uma câmera perspectiva, objetos atrás da
câmera seriam desenhados de cabeça para baixo e invertidos por causa da transformação perspectiva
DIM10227
Plano de Recorte Traseiro
Porque se usa plano de recorte traseiro? Desenhando objetos muito distantes da câmera
Objetos muito distantes podem aparecer muito pequenos para serem visualmente significantes, mas ainda demoram muito para serem desenhados
Em uma cena com muitos objetos, por questões de aparência pode-se renderizar somene os mais próximos descartando-se os mais distantes
Problema - Objetos aparecendo repentinamente em jogos? Objetos que acabam de entrar no plano de recorte traseiro. Utilizar névoa (fog)
Hardware mais rápido e algoritmos de nível de detalhamento (LoD) permitem resolver este problema sem a utilização de névoa
DIM10228
Comprimento de Foco
Alguns modelos de câmera usam comprimento de foco
É uma medida da faixa de foco ideal e aproxima o comportamento de uma lente de câmera real
Objetos na distância de comprimento de foco são renderizadas em foco enquanto que objetos mais próximos ou distantes são borrados
Usados com planos de recorte
DIM10229
Especificação do Volume de Visão Posição, vetores olhar-para e vertical
(orientação), aspect ratio, ângulo de altura e planos de recorte especificam um volume de visão truncado
É a especificação do espaço delimitado que a câmera consegue ver
Visão 2D da cena 3D é calculada do volume de visão truncado e projetada no plano de filme
Volumes de visão truncados podem ser paralelos ou perspectivos
DIM10230
Volume de Visão – Projeção Paralela
Volume de visão truncado é um paralelepípedo
Na projeção paralela os ângulos de altura e largura são zero
Height
Width
Look vectorNear
distance
Position
Far distance
Up vector
DIM10231
Volume de Visão – Projeção Perspectiva
Volume de visão truncado é uma pirâmide truncada (frustum)
Position
Near distance
Far distance
Height angle
Width angle =
Look vector
Up vector
Height angle • Aspect ratio
DIM10232
Plano do Filme?
Filme da câmera virtual é um retângulo em um plano de filme infinito que contém a imagem da cena
Posicionamento do plano do filme Volume de visão paralelo – desde que o plano do filme
se localize na frente da cena, a distância do mesmo não importa
Volume de visão perspectivo – O mesmo se aplica já que se transforma o volume de visão perspectivo em um volume de visão paralelo antes do mapeamento para as coordenadas do viewport