Capítulo 7: Implementación y Pruebasque la optimización propuesta reduce los tiempos de respuesta alrededorde 40%. Cabe destacar que aunque la función de transferencia de VF8bes más suave, el tiempo de cómputo de la tabla de pre-integración essuperior al de IE. Esto se debe a dos razones; primero, VF8b cuenta condos niveles de detalle adicionales, y segundo, la función de transferenciade IE es totalmente transparente en largos intervalos dentro de sudominio (ver canal alfa –líneas blancas– de la Fig. 7.2b).IE (nLod=7)VF8b (nLod=9)Tamaño deMétodo Tiempo % Tiempo %Tabla(seg.) Reducción (seg.) Reducción64*64*nLodOriginal 0,04840,437545,04Optimizado 0,0266 0,229647,52128*128*nLodOriginal 0,17191,051638,22Optimizado 0,1062 0,593843,53256*256*nLodOriginal 0,58122,609436,55Optimizado 0,3688 1,496942,63512*512*nLodOriginal 2,33757,448536,10Optimizado 1,4937 4,371941,301024*1024*nLodOriginal 9,429520,898535,96Optimizado 6,0390 12,500040,192048*2048*nLodOriginal 38,703070,203035,77Optimizado 24,8595 42,765539,08Tabla 7.3: tiempo de construcción de la tabla exponencial. Cada entrada en la tablaes una tupla RGBA, en donde cada canal almacena una integral en punto flotante de32 bits.Al utilizar la tabla exponencial para muestreo adaptativo basado en nivelde detalle, notamos que se generan artefactos visuales entre bricksrepresentados con un nivel de detalle muy burdo, al hacer unacercamiento muy pronunciado (ver Fig. 7.4). Esto se debe a que en lasfronteras entre bricks, se está aproximando linealmente la integral a unadistancia h arbitraria, entre integrales pre-calculadas muy distanciadas.Por ejemplo, al requerir una integral con h=5,5 se interpola linealmentelas integrales calculadas para h=4 y h=8, correspondientes a los nivelesde detalle 2 y 3 respectivamente.Para obtener una mejor aproximación en las fronteras entre bricks, esnecesaria la utilización de una tabla de pre-integración 3D uniforme.Adicionalmente, esta tabla es requerida en la implementación de latécnica basada en polígonos alineados al viewport con proyecciónperspectiva y muestreo adaptativo basado en el nivel de detalle, puestoque la distancia entre muestras es arbitraria tanto en las fronteras de losbricks, como dentro de los bricks. Para generar esta tabla 3D, se varía huniformemente en el intervalo [0,hmax], con un paso de discretización h,en donde hmax es la distancia máxima permitida entre pares de muestras.En nuestras pruebas, encontramos que el valor de h=1.0 es suficientepara eliminar los artefactos visuales presentes en la Fig. 7.4a y 7.4c.-116-
Capítulo 7: Implementación y Pruebas(a)(b)(c)(d)Figura 7.4: artefactos en fronteras de bricks (a,c) al utilizar tabla exponencial, ymuestreo adaptativo basado en nivel de detalle. Se muestra un acercamiento en lafrontera entre dos bricks de niveles de detalle 2 y 3. En las imágenes (b,d) se utilizóuna tabla uniforme con h=1.0.IE (nLod=7)VF (nLod=9)Tamaño deMétodo Tiempo % Tiempo %Tabla(seg.) Reducción (seg.) Reducción64*64*2 nLod Original 1,172088,828040,02Optimizado 0,7030 53,719039,52128*128*2 nLod Original 3,4690208,674033,35Optimizado 2,3120 136,875034,41256*256*2 nLod Original 11,0160497,388032,2Optimizado 7,4690 326,157034,43512*512*2 nLod Original 43,1530--32,4Optimizado 29,1720 ----Tabla 7.4: Tiempo de cómputo para la tabla de pre-integración 3D uniforme. Cadaentrada en la tabla almacena una tupla RGBA, a 32 bits por canal.En los resultados de la tabla 7.4 se aprecia que el método optimizadoreduce el tiempo de respuesta entre 32% y 40%, tomando hmax=2 nLod .Algunos resultados no se lograron completar, por limitaciones en laasignación de un bloque continuo de memoria superior o igual a 1GB, en-117-