A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

| tema | Ray Tracing Distribuído Rudolfo Quintas e Tiago Rodrigues | apresentação | | autores | Robert L. Cook, Thomas Porter e Loren Carpenter MCGAV 2004.

Apresentações semelhantes


Apresentação em tema: "| tema | Ray Tracing Distribuído Rudolfo Quintas e Tiago Rodrigues | apresentação | | autores | Robert L. Cook, Thomas Porter e Loren Carpenter MCGAV 2004."— Transcrição da apresentação:

1 | tema | Ray Tracing Distribuído Rudolfo Quintas e Tiago Rodrigues | apresentação | | autores | Robert L. Cook, Thomas Porter e Loren Carpenter MCGAV 2004 – Universidade do Minho | instituição | Computer Division - Lucasfilm Ltd.

2 Ray Tracing Distribuído :: Vantagem Permite representar sombras, reflexos e refracções de luz, sem grandes dificuldades. :: Desvantagem Não existe a simulação de fenómenos ruidosos Uma das técnicas mais elegantes na computação gráfica. As direcções dos raios são determinadas de modo preciso.

3 Ray Tracing Distribuído :: Proposta Incorporação de fenómenos ruidosos. Distribuição das direcções dos raios de acordo uma função analítica. Soluções para motion blur, profundidade de campo, penumbras, translucidez e reflexões esbatidas. Os cálculos podem ser integrados nos cálculos da superfície visível.

4 | 1. Introdução | Ray Tracing Distribuído ::As imagens tra ç adas por os raios resultam sharp porque as direc ç ões dos raios são determinadas precisamente da geometria :: Esta abordagem não foi conseguida anteriormente por causa do aliasing :: O ray tracing é uma forma de amostragem por ponto teve sujeito ao artefacto do aliasing :: Este aliasing não é inerentepode Pode ser filtrado como qualquer outro método analítico. -> Jittering

5 Ray Tracing Distribuído :: A técnica de antialiasing abre novas possibilidades para o ray tracing :: Calculado com o antaialiasing devido, os raios podem amostrar movimento, as lentes da câmara, a função de shading completa. :: A chave -> não são necessários raios extra para lá daqueles usados para a sobreamostragem espacial :: Por exemplo, em vez de tirar múltiplas amostragens temporais a todas as localizações espaciais,os raios são distribuídos no tempo de forma a que raios em localizações espaciais diferentes sejam traçados em diferentes instâncias do tempo. :: raios distribuídos oferecem benefícios substanciais com pouco custo adicional. :: O antialiasing proposto é baseado na abordagem proposta por Rodney Stock. | 1. Introdução (continuação)|

6 Ray Tracing Distribuído :: Amostrar o raio transmitido produz translucencia (transparência esbatida). :: Amostrar o raio reflectido de acordo com a função de distribuição especular produz gloss (reflexão esbatida) :: Amostrar o ângulo sólido das fontes de luz produz penumbras. :: Amostrar as lentes da câmara produz o efeito de profundidade de campo. :: Amostrar ao longo do tempo produz motion blur | 1. Introdução (continuação)|

7 Ray Tracing Distribuído | 2. Shading | A intensidade I da luz reflectida num ponto da superfície é um integral da função de iluminação L e da função da reflexão R no domínio representado pelo hemisfério acima da superfície. I( Φ r, θ r ) = L(Φ i, θ i ) R(Φ i, θ i, Φ r, θ r ) dΦ i dθ i Φi θi (Φ i, θ i ) - o ângulo de incidência. (Φ r, θ r ) - o ângulo de reflexão. :: Problema:Complexidade de cálculo do integral. :: Solução:Simplificar através de aproximações.

8 :: Solução 1: O integral L é substituído por um somatório num domínio discreto de direcções. Ray Tracing Distribuído Estas direcções indicam as fontes de luz como fontes pontuais. Estes pressupostos originam sombras definidas.

9 Ray Tracing Distribuído :: Solução 2: As direcções onde não existe uma fonte de luz são agrupadas numa fonte de luz ambiente. A luz ambiente é a mesma em qualquer direcção. Se L é independente de Φ i e θ i, então pode ser retirada do integral. O integral de R é substituído por uma média, ou ambiente, reflectância.

10 Ray Tracing Distribuído :: Solução 3: A função R é simplificada de modo que uma superfície apenas reflicta a luz numa direcção, ou seja, que funcione como um espelho. :: Solução 4: Um método equivalente ao acima referido pode ser aplicado para a luz transmitida. Estes pressupostos originam superfícies com reflexos definidos. Estes pressupostos originam superfícies com refracções definidas.

11 Ray Tracing Distribuído | 2.1. Gloss | (reflexão esbatida) :: As reflexões são processadas como espelhos na computação gráfica, mas na vida real são normalmente esbatidas ou desviadas/irregulares. :: A forma como uma superfície reflecte o seu meio ambiente é chamado gloss :: Qualquer simulação analítica destas reflexões tem que ser baseada no integral da reflectância sobre qualquer ângulo sólido. :: As reflexões espelhadas são determinadas traçando raios desde a superfície na direcção do espelho

12 Ray Tracing Distribuído | Exemplos Gloss | Ray Trace ClássicoRay Trace Distribuído

13 | 2.2. Translucidez| Ray Tracing Distribuído - A distribuição dos raios transmitidos é definida pela função de transmissão especular. - Similar à que foi apresentada para a luz reflectida :: A função de transmissão T: - O domínio é definido pelo hemisfério que se encontra por detrás da superfície - A luz transmitida contém componentes de luz ambiente, difusa e especular. :: A translucidez difere da transparência porque as imagens observadas através de objectos translúcidos não são nítidas :: Similiar ao problema do gloss, a translucidez necessita um integral da luz transmitida. :: A translucidez é determinada pela distribuição dos raios secundários em torno da direcção da luz transmitida.

14 | 2.3 Penumbras | Ray Tracing Distribuído :: As penumbras ocorrem quando uma fonte de luz está parcialmente escondida/escurecida :: A intensidade reflectida devido a uma luz neste estado é proporcional ao angulo sólido da porção visível da luz ::Nota: O ângulo sólido foi explicitamente incluído num modelo de shading, mas nenhum algoritmo foi sugerido para determinar este ângulo sólido por causa da complexidade da computação envolvida :: As sombras são calculadas traçando raios desde a superfície até as fontes de luz, e as penumbras podem ser calculadas distribuindo estes raios secundários. :: O raio da sombra (shadow ray) pode sertraçado para qualquer ponto na fonte de luz

15 Ray Tracing Distribuído :: A distribuição destes raios de sombreamento deve ser pesada tendo em conta a área projectada e a luminosidade das diferentes partes da fonte de luz. :: O numero de raios traçados para cada região deveria ser proporcional à quantidade de energia de luz que viria dessa região se a luz não estivesse obstruída. :: A proporção de amostras de pontos iluminados numa região da superfície é igual á proporção dessa intensidade de luz que é visível nessa região :: O raio da sombra (shadow ray) pode sertraçado para qualquer ponto na fonte de luz | 2.3 Penumbras (continuação) |

16 Ray Tracing Distribuído |Exemplo Penumbras| Ray Trace Clássico Ray Trace Distribuído

17 | 3. Profundidade de campo | Ray Tracing Distribuído :: Ray Tracing clássico As imagens resultantes têm um campo de visão finito. Os objectos apresentam-se bem definidos nas imagens. O modelo de camera utilizado tem uma abertura infinitesimamente pequena.

18 | 3. Profundidade de campo (continuação) | :: Postmesil - Simulação de profundidade de campo com uma técnica de pós-processamento. - Primeiro, cada objecto é desenhado de modo definido. - Segundo, cada objecto é envolvido com um filtro definido pela dimensão do circulo confusion. - O programa despende a maior parte do tempo no pós-processamento. - O tempo de pós-processamento aumenta drasticamente à medida que a abertura de lente diminui. Ray Tracing Distribuído

19 | 3. Profundidade de campo (continuação) | :: Postmesil (continuação) A abordagem de pós-processamento não é correcta porque a visibilidade é calculada a partir de um único ponto, o centro da lente. O visionamento do ambiente é diferente a partir das diferentes partes da lente, e as diferenças incluem mudanças na visibilidade e na aparência (shading). A informação sobre essas partes não estarão disponíveis no pós-processamento. Ray Tracing Distribuído

20 :: Ray Tracing Distribuído O seu tamanho depende da distância do ponto e da distância focal. Cada ponto na cena apresenta-se como um círculo (confusion) no plano da imagem.. | 3. Profundidade de campo (continuação) | As camera e o olho têm uma abertura de lente finita.

21 | 3. Profundidade de campo (continuação) | Ray Tracing Distribuído :: Ray Tracing Distribuído - A superfícies visíveis e a sua aparência (shading) podem ser diferentes de acordo as diferentes partes da lente. :: Seguir o percurso do raio - Primeiro é definida uma linha entre do pixel (plano da imagem) e um ponto escolhido no círculo definido pela lente (jittering relativamente ao centro da mesma) - O raio primário é disparado a partir deste ponto da lente passando pelo ponto focal. - O processo é repetido N vezes para cada pixel. As especificações da camera necessárias para estes cálculos são a distância focal e o diâmetro da lente. Este método não tem em consideração o efeito de difracção.

22 Ray Tracing Distribuído o problema do motion blur e as tentativas anteriores de o solucionar: :: O método de motion blur discutido por Potmesi não somente é dispendioso, mas também separa os cálculos das superfícies visíveis dos cálculos do motion blur :: na maior parte dos casos não podemos somente calcular uma só imagem e esbater o resultado :: Problemas com as imagens de fundo, rotação de objectos e mudanças de textura :: As sombras resultantes do motion blur também são importantes e não são processadas correctamente se calcularmos somente uma shade por frame | 4. Motion Blur |

23 Ray Tracing Distribuído | 4. Motion Blur (cotntinuação) | :: A técnica de pontos amostrados parece ser a única abordagem que oferece algum compromisso para resolver o problema do motion blur. :: Uma solução por pontos amostrados foi proposto por Karein e Badler. no entanto, amostra os pontos somente nos espaço e não no tempo. :: Problema:As amostragens do shading não são esbatidas pelo movimento.

24 Ray Tracing Distribuído | 4. Motion Blur (cotntinuação) | :: Eles também impõem a restrição infeliz que ambos os vértices de uma aresta devem mover-se à mesma velocidade :: O algoritmo também está limitado ao movimento linear :: O método envolve manter uma lista de todos os objectos que cruzam cada ponto de amostra durante o tempo da frame :: uma lista que poderia ser bastante grande para uma cena complexa com movimentos rápidos.

25 Ray Tracing Distribuído | 4. Motion Blur (cotntinuação) | Distribuindo os pontos de amostragem no tempo soluciona o problema do motion blur :: O único requisito é a habilidade para calcular a posição do objecto a um tempo específico :: mudanças na visibilidade e shading de um objecto são correctamente calculadas/tidas em conta. :: As sombras (umbras e penumbras), profundidade de campo, reflexos e intersecções são todos correctamente esbatidos.

26 Ray Tracing Distribuído | 4. Motion Blur (cotntinuação) | :: Esta distribuição dos pontos amostrados no tempo não envolve a adição de mais pontos de amostragem :: Actualizar as posições do objecto para cada momento de tempo é o único tempo extra que os cálculos necessitam parar fazer o motion blur :: Noção Geral:Utilizando diferentes distribuições de raios, o movimento pode ser esbatido

27 Ray Tracing Distribuído | 4. Motion Blur (cotntinuação) | Imagens com Motion Blur com tempos de exposição diferentes

28 | 5. Outras implicações do algoritmo | Ray Tracing Distribuído :: Determinar a posição Visto que cada raio ocorre num único instante do tempo, é necessário actualizar as posições dos objectos para esse instante do tempo. :: A união, a intersecção e a diferença. A intersecção de superfícies é lidada de modo trivial, apenas determina-se qual é o objecto que se encontra mais próximo, num determinado instante do tempo. Em cada ponto de amostragem, apenas uma das superfícies é visível.

29 | 5. Outras implicações do algoritmo (continuação) | Ray Tracing Distribuído Sendo r a transparência e R a reflexão detectada por um raio num determinado instante e local. R e r são independentes do comprimento de onda r a cor da transparência não é necessariamente igual à cor da reflexão. Por exemplo, um plástico vermelho transparente pode ter brilho branco. Se existires n-1 superfícies transparentes em frente de uma superfície opaca, a luz que chega até ao observador é n-1 n-2 n i-1 R n r i + R n-1 r i + … + R 2 r 1 + R 1 = R i r j i=1 i=1 i=1 j=1

30 | 6. Sumário Do Algoritmo | Ray Tracing Distribuído 2-O numero de raios num determinado momento é proporcional aos valores do desejado filtro temporal nesse momento de tempo. 1- Escolher um momento no tempo para o raio e move os objectos de acordo 3- Construir um raio desde o ponto do olho (centro da lente) a um ponto no ecrã 4- Escolher uma localização na lente e traça um raio desde essa localização ao ponto focal do raio original 5- Determinar qual o objecto que está visível. 6- Calcular as sombras. 7- Para cada fonte de luz, escolher uma localização na luz e traçar um raio desde o ponto visível a essa localização

31 | 6. Sumário Do Algoritmo (continuação) | Ray Tracing Distribuído 10- O número de raios traçados numa direcção específica deve ser proporcional à quantidade de luz desde essa direcção que è reflectida na direcção do observador 9- Para reflexões, escolher uma direcção à volta do espelho de direcção e traçar um raio nessa direcção desde o ponto visível. 11- Para a luz transmitida, escolher uma direcção à volta da direcção da luz transmitida e traça um raio nessa direcção desde o ponto visível. 12- O número de raios traçados nessa direcção específica deve ser proporcional à quantidade de luz desde essa direcção que é transmitida até ao observador 8- O numero de raios traçados a uma localização na luz deveria ser proporcional à intensidade e área projectada daquela localização como vista da superfície

32 | 7. Conclusão | Ray Tracing Distribuído :: O ray tracing distribuído é um novo paradigma para a computação gráfica que resolve um conjunto de problemas ou problemas parcialmente resolvidos :: A abordagem também foi bem resolvida quando adaptada a uma algoritmo de scanline :: Incorpora os cálculos da profundidade de campo nos cálculos das superfícies visíveis, eliminando os problemas dos métodos anteriores :: Torna possivel os fenómentos esbatidos, como as penumbras, o gloss e translucencia. Tudo isto pose ser esbatido com o movimento distribuindo os raios no tempo. :: Esta abordagem na síntese de imagens é praticamente tão dispendiosa quanto o ray tracing clássico e resolve todos estes problemas de uma só vez.

33 | 7. Conclusão (continuação) | Ray Tracing Distribuído :: Diferenças no shading, nas penumbras e na visibilidade são tidas em conta para os cálculos da profundidade de campo :: As mudanças na profundidade de campo e na visibilidade são esbatidas com o movimento. :: Os cálculos de penumbras e de shading são esbatidos com o movimento -Todos este fenómenos estão interligados e a nova abordagem soluciona todos eles de uma só vez amostrando (by sampling) o espaço multidimensional que eles definem :: A chave para isto é a habilidade de esbater a amostra por ponto (antialias point sampling). :: Os problemas nunca poderiam ser resolvidos separadamente porque estão todos interligados


Carregar ppt "| tema | Ray Tracing Distribuído Rudolfo Quintas e Tiago Rodrigues | apresentação | | autores | Robert L. Cook, Thomas Porter e Loren Carpenter MCGAV 2004."

Apresentações semelhantes


Anúncios Google