10 - presentacion shaders tutorial

19
Shader Tutorial 1. Shaders Efectos gráficos asociados a una o varias texturas que ofrecen el resultado visual final de un material renderizado Pág. 1 Unity 3D: Shader Tutorial

Upload: fkrdg

Post on 09-Sep-2015

242 views

Category:

Documents


2 download

DESCRIPTION

tutorial Shaders

TRANSCRIPT

  • Shader Tutorial

    1. Shaders

    Efectos grficos asociados a una o varias texturas que ofrecen el resultado visual final de un material renderizado

    Pg. 1 Unity 3D: Shader Tutorial

  • Shader Tutorial

    1.1 Color de teido

    RGB aplicado a todo el polgono

    Pg. 2 Unity 3D: Shader Tutorial

  • Shader Tutorial

    1.2 Tratamiento de la iluminacin

    Se calcula nicamente para los vrtices de cada polgono, y el resto se calcula eficientemente por interpolacin (Gouraud y

    Phong).

    Pg. 3 Unity 3D: Shader Tutorial

  • Shader Tutorial

    Pg. 4 Unity 3D: Shader Tutorial

  • Shader Tutorial

    1.3 Texturizado

    Se mapea sobre el polgono, puede hacerse directamente con un valor de repeticin (Tiles) o mapearse por coordenadas (UV

    Mapping).

    Pg. 5 Unity 3D: Shader Tutorial

  • Shader Tutorial

    Pg. 6 Unity 3D: Shader Tutorial

  • Shader Tutorial

    1.4 Shader difuso

    Muestra el valor RGB completo de la textura en aquellos puntos en los que el rayo de luz resulta totalmente perpendicular a la

    superficie, y reduce el RGB a negro a medida que el rayo se desva de esa direccin.

    Pg. 7 Unity 3D: Shader Tutorial

  • Shader Tutorial

    1.4 Shader especular

    A diferencia del difuso, cuando el rayo de luz es perpendicular a la superficie, es el color de la fuente de luz el que se muestra. Se

    comporta como un reflejo. El comportamiento especular es configurable y cuando su valor es 0 se comporta igual que el

    shader difuso.

    Pg. 8 Unity 3D: Shader Tutorial

  • Shader Tutorial

    Pg. 9 Unity 3D: Shader Tutorial

  • Shader Tutorial

    2. Mapas de normales

    Son texturas secundarias que se utilizan en los shaders Bumped y Parallax.

    Pg. 10 Unity 3D: Shader Tutorial

  • Shader Tutorial

    2.1 Normal de un polgono

    Vector que seala la cara visible del polgono (S, los polgonos slo son visibles desde uno de sus lados). Es por tanto un vector

    perpendicular a la superficie. La iluminacin es total cuando el rayo de luz est perfectamente alineado con la normal del

    polgono.

    Pg. 11 Unity 3D: Shader Tutorial

  • Shader Tutorial

    2.2 Generacin de un mapa de normales

    En cada pxel almacena un color RGB que en realidad representa un vector direccional XYZ. Ese vector direccional representa una

    normal distinta en cada punto, y permite que a efectos de iluminacin la superficie parezca tener irregularidades.

    Pg. 12 Unity 3D: Shader Tutorial

  • Shader Tutorial

    3. Almacenamiento en memoria de las texturas

    Las texturas se cargan desde el disco duro (Lento) a la memoria de la GPU (Rpida) consumiento parte de su memoria.

    Pg. 13 Unity 3D: Shader Tutorial

  • Shader Tutorial

    3.1 Texturas de alta resolucin

    Actualmente, la mxima resolucin de textura que soportan las GPUs es de 4096x4096 pxels.

    Si asumimos que cada pxel almacena un color en 32 bits (4 bytes de informacin), tenemos que puede llegar a ocupar:

    4096 x 4096 x 4 = 67108864 bytes = 64Mb

    Pg. 14 Unity 3D: Shader Tutorial

  • Shader Tutorial3.2 Compresin RGB

    Uno de los sistemas ms utilizados de compresin RGB es el DXT.

    Se trata de un sistema diferencial, de forma que, para cada pixel adyacente, slo guarda unos cuantos bits de informacin de

    diferencia respecto del anterior.

    Si guardamos en DXT con 8 bits diferenciales por pxel tenemos una reduccin de tamao de 64Mb a 16Mb.

    Pg. 15 Unity 3D: Shader Tutorial

  • Shader Tutorial

    3.3 MipMaping

    El MipMaping parte de la premisa de que no es necesario mostrar la textura a resolucin completa en todo momento, ya que en

    ocasiones puede estar renderizndose a mucha distancia de la cmara y bastara con una "miniatura" de la misma.

    Pg. 16 Unity 3D: Shader Tutorial

  • Shader Tutorial3.3 MipMaping

    Pg. 17 Unity 3D: Shader Tutorial

  • Shader Tutorial3.3 MipMaping

    Pg. 18 Unity 3D: Shader Tutorial

  • Shader Tutorial

    3.3 MipMaping

    El MipMaping parte de la premisa de que no es necesario mostrar la textura con su resolucin completa en todo momento, ya que en

    ocasiones puede estar renderizndose a mucha distancia de la cmara.

    Pg. 20 Unity 3D: Shader Tutorial

    Pgina 1Pgina 2Pgina 3Pgina 4Pgina 5Pgina 6Pgina 7Pgina 8Pgina 9Pgina 10Pgina 11Pgina 12Pgina 13Pgina 14Pgina 15Pgina 16Pgina 17Pgina 18Pgina 20