![Page 1: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/1.jpg)
Jose María Buades Rubio
Light MapsLight Maps
Iluminación mediante multitextura
![Page 2: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/2.jpg)
Multi-texturaMulti-textura
• Es la combinación de varias texturas sobre una superficie
• Puede estar acelerado por hardwareGL_ARB_multitexture
• Se puede realizar por software renderizando la misma superficie n veces, renderización multi-paso
![Page 3: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/3.jpg)
Multi-textura — Multi-pasoMulti-textura — Multi-paso
Multi-paso Multi-texturaSelect (texture) Select (texture, lightmap, fogmap)Draw (object) Draw (object)
Select (lightmap)Draw (object)
Select (fogmap)Draw (object)
...
![Page 4: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/4.jpg)
Light MapsLight Maps
• Es una técnica multitextura que permite precalcular la iluminación y guardarla en una textura bidimensional
• La ventaja es que la iluminación se puede calcular con cualquier método de iluminación global
• El efecto de realismo es mayor
![Page 5: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/5.jpg)
Técnica de iluminaciónTécnica de iluminación
• Valida para luces estáticas y objetos estáticos
• En los otros casos se realiza una aportación de luz mediante un método local o se recalcula el mapa de luz
• Mapas de luz son de menor resolución que las texturas de color
![Page 6: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/6.jpg)
EjemplosEjemplos
Frame renderizado usando un mapa de luz calculado mediante radiosidad, el cálculo
del mapa de luz llevó una hora
![Page 7: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/7.jpg)
Renderización solo con Renderización solo con mapa de luz, sin filtrarmapa de luz, sin filtrar
![Page 8: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/8.jpg)
Renderización solo con Renderización solo con mapa de luz filtradomapa de luz filtrado
![Page 9: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/9.jpg)
Renderización solo con Renderización solo con texturas y sin iluminacióntexturas y sin iluminación
![Page 10: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/10.jpg)
Renderización Renderización multitextura, sin filtrar el multitextura, sin filtrar el mapa de luzmapa de luz
![Page 11: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/11.jpg)
Renderización Renderización multitextura, filtrando el multitextura, filtrando el mapa de luzmapa de luz
![Page 12: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/12.jpg)
Soft ShadowsNo Soft Shadows
Sin filtrar
Filtrado
![Page 13: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/13.jpg)
Textura sin filtrado Mip-mapping filtrado
Mapa de luz sin filtrar Mapa de luz con filtrado lineal
![Page 14: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/14.jpg)
Escena renderizada con mip-mapping filtrado y mapa de luz aplicado
Mapa de niebla filtrado Combinación de todo
![Page 15: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/15.jpg)
Multitextura en OpenGLMultitextura en OpenGL
Determinar el numero de unidades de texturizacion
int iTextureUnits;
glGetIntegerv(GL_MAX_TEXTURE_UNITS_ARB, &iTextureUnits);
![Page 16: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/16.jpg)
Multitextura en OpenGLMultitextura en OpenGL
Seleccionar la unidad de texturización a la que se refieren las funciones
glActiveTextureARB(GL_TEXTUREi_ARB);
Donde i se refiere a la i-esima unidad de texturización 0 i k –1, k el numero de unidades de texturización
![Page 17: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/17.jpg)
Multitextura en OpenGLMultitextura en OpenGL
Especificar la coordenada de la textura para cada unidad
glBegin(GL_QUADS);
glMultiTexCoord2fARB(GL_TEXTURE0_ARB, 0, 0);
glMultiTexCoord2fARB(GL_TEXTURE1_ARB, 0.1, 0.2);
glVertex3f(0, 0, 0);
glMultiTexCoord2fARB(GL_TEXTURE0_ARB, 1, 0);
glMultiTexCoord2fARB(GL_TEXTURE1_ARB, 0.1, 0.8);
glVertex3f(0, 0, 0);
…
glEnd();
![Page 18: Jose María Buades Rubio Light Maps Iluminación mediante multitextura](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4ce1a28abb57c93d5da/html5/thumbnails/18.jpg)
Ejemplo: Ejemplo: Demo.Demo.zipzip