Últimos Comentarios

Newsflash

ya hemos creado la lista codepixel en googlegroups.com para los que quieran formar parte de la comunidad de la web.

 

 

Polls

Cuantas horas programas al día?
 

Login Form






Lost Password?
No account yet? Register

Quién está online?

We have 4 guests online

Syndicate

Inicio
G-buffer y deferred shading PDF Print E-mail
Written by Javier Loureiro   
Monday, 17 March 2008

 

 Esta charla es del año pasado , pero me haparecido muy interesante por la cantidad de imágenes que incluye. Es sobre el killzone 2: Deferred Rendering in Killzone 2. 

 La charla nos explica el pipeline ideal para renderizar usando el geometry buffer (g-buffer), donde se almacenan atributos de la geometria en espacio de imagen. Es una técnica muy usada en animación, para dejar despues que el postproceso genere el fotograma adecuado (además, es la técnica que más dominan los iluminadores y artistas).

El g-buffer no es mñas que renderizar atributos de la malla en un fotograma: la normal, coordenadas de textura, profundidad, altura, id del objeto, vectores de movimiento, etc. Para despues tener un shader que los combine y consiga el resultado final. El "problema" está en que tenemos que renderizar muchas veces la escena, pero la mayoria de las veces rederizamos toda la escena con un simple shader, porlo que será un fotogrmaa muy rápido. En este pdf podemos leer sobre el g-buffer, y una aplicación para render no fotorealista.

 En la charla de guerrilla podemos ver los distintos pases: normal en espacio de vista, pase despecular, pase de profundidad, etc. Y despues usaremos esta información para combinarla en un fotograma final.

 Las tarjetas nuevas tienen buffers en float muy potentes, así que la precisión mejora considerablemente para usar esta técnica. En el momento de sacar el killzone2 no tenían tanta precisión, por eso indican que esto es un problema. Pero en las tarjetas modernas, se reduce la precisión. Pensad que si hacemos 1 normal por pixel, todo el pixel tendrá la misma normal.

 Una cosa que me pareción interesante es que no tienen porque renderizar todo el buffer contnuamente. Por ejemplo, los balazos pueden pintarse por encima. Además, ciertos buffers nos permiten condicionar posteriores renders. Por ejemplo, si el color difuso es negro, podemos no calcular la luz en ese pixel, ya que la multiplicaríamos por negro posteriormente... y cosas parecidas.

 También es interesante ver cuánto se deja a manos del artista, sobre todo en iluminación. El artista tiene mucho control sobre sombras y puede hacer mucho manualmente para ajustar calidad/precio. 

 Interesante charla para conocer un pipeline de render moderno.

 

Comentarios
Añadir nuevoBuscar
- Rubén - MRT y AA     | 83.44.100.xxx | 2008-03-22 12:07:51
Además de los buffers en punto flotante, las tarjetas modernas también vienen con "multiple render targets" que permiten guardar un montón de valores en buffers diferentes en un solo render, evitando tener que hacer muchas pasadas.
A mi me gusta mucho este paper de nVidia sobre deferred shading y la Geforce 6800:
http://en.wikipedia.org/wiki/Deferred_shading
Analiza los pros y los contras, y explica que no siempre es buena idea aplicar esta técnica. Hay que tener en cuenta que complica el anti-aliasing, por ejemplo...
- Rubén - El enlace, ahora sí...     | 83.44.100.xxx | 2008-03-22 12:09:32
Ups...
El enlace directo a la presentación de nVidia:

http://download.nvidia.com/developer/presentations/2004/6800_Leagues/6800_Leagues_Deferred_Shading.pdf

Para cuando un botón de preview en los comentarios? ;)
Escribir comentario
Nombre:
Email:
 
Website:
Título:
Código UBB:
[b] [i] [u] [url] [quote] [code] [img] 
 
Security Image
Por favor introduce el código anti-spam que puedes leer en la imagen.

Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved.



menéameDigg!Del.icio.us!Google!Technorati!Yahoo!
Last Updated ( Monday, 17 March 2008 )
 
< Prev   Next >

Lista de Correo

visita la lista de correo de codepixel. Es una lista abierta, asi que podrás subscribirte y preguntar tus dudas de programación, compartir tus opiniones, aportar ideas, y formar parte de la comunidad codepixelera.

 

Visita la antigua página

Image