El gran misterio de los shaders. Francisco Tufró <[email protected]> @franciscotufro Francisco quién? Desarrollador independiente de video juegos. ! Miembro fundador de El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Francisco quién? El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Francisco quién? El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Francisco quién? Psst.. Estamos en KICKSTARTER ( kck.st/1td3TlQ ) El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Qué es un Shader? El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro NOTA No me gusta traducir términos técnicos al español. ! Suenan mal y hay poco consenso en general. El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Graphics Pipeline Tubería de gráficos? Ven a lo que me refiero… El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Graphics Pipeline Herramienta standard para mostrar gráficos en placas aceleradoras (GPU). El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Graphics Pipeline Pipeline fijo para OpenGL 1.x (Incluyendo OpenGL ES) El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Graphics Pipeline Pipeline programable para OpenGL 2+ (Incluyendo OpenGL ES 2) El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Graphics Pipeline Vertex Data Primitive Processing Vertex Shader Primitive Assembly Rasterizer Depth & Stencil Fragment Shader Color Buffer Blend Dither Framebuffer El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Graphics Pipeline Vertex Data Primitive Processing Vertex Shader Vertex Shader Podemos hacer operaciones sobre los vértices. Ubicarlos en el espacio, modificarlos, calcular normales, etc. Primitive Assembly Rasterizer Depth & Stencil Fragment Shader Color Buffer Blend Dither Framebuffer El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Graphics Pipeline Vertex Data Primitive Processing Vertex Shader Fragment Shader Podemos hacer operaciones sobre los fragmentos que luego serán pixeles en la pantalla. Primitive Assembly Rasterizer Depth & Stencil Fragment Shader Color Buffer Blend Dither Framebuffer El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Qué es un Shader? El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Qué es un Shader? Un programa escrito específicamente para ser corrido en la GPU. ! Normalmente es utilizado para operaciones gráficas. El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Otros tipos de Shader Además de Vertex y Fragment shaders, existen otros tipos: • Tesselation shaders • Geometry shaders • Compute shaders El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Ejemplos El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Más información En inglés :( El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Niebla en Asylum (Por Francisco Tufró) http://bit.ly/1Em6g8y Efectos visuales en Nubarron (Por Guido Villaverde) http://kck.st/1uBZ1Z2 El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Graphics Pipeline, historia y detalles: http://3dgep.com/introduction-to-opengl-and-glsl/ GRAN libro sobre programación gráfica en tiempo real: http://www.realtimerendering.com/ Graphics Gems: libros que agrupan distintos artículos sobre programación gráfica. http://tog.acm.org/resources/GraphicsGems/ El “Gran Misterio” de los shaders. // Francisco Tufró <[email protected]> @franciscotufro Muchas Gracias! Francisco Tufró <[email protected]> @franciscotufro