Reyes que son dioses y dioses que eligen a los reyes. La ...
Grupo de Informática Gráfica Avanzada Universidad...
Transcript of Grupo de Informática Gráfica Avanzada Universidad...
![Page 1: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/1.jpg)
Grupo de Informática Gráfica AvanzadaUniversidad de Zaragoza
Superficies de subdivisión
Diego Gutiérrez
![Page 2: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/2.jpg)
Diego Gutiérrez
Indice
IntroducciónSubdivisión por interpolaciónVentajasSubdivisión como convolución de B-splinesPolígonos, NURBS o subdivisión?
![Page 3: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/3.jpg)
Diego Gutiérrez
Introducción
![Page 4: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/4.jpg)
Diego Gutiérrez
Introducción
Geri´s Game (Oscar, 1997):http://www.youtube.com/watch?v=Sfls-KzGybs&feature=related
![Page 5: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/5.jpg)
Diego Gutiérrez
Introducción
Papers publicados en 1978 marcan el comienzo de las superficiesde subdivisión en modelado geométrico
Geri´s Game, a Bug´s Life, Toy Story 2...
Idea original (años 40-50): G. de Rham usa el concepto de corner cutting para redondear curvas
![Page 6: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/6.jpg)
Diego Gutiérrez
Subdivisión por interpolación
La subdivisión es una técnica algorítmica para generar superficies suaves como una secuencia de mallas poligonales refinadas sucesivamente
![Page 7: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/7.jpg)
Diego Gutiérrez
Subdivisión por interpolación
La subdivisión define una curva o superficie como el límite de una secuencia de refinamientos sucesivos
Ejemplo de subdivisión: cada triángulo se subdivide en 4 en cada iteración
![Page 8: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/8.jpg)
Diego Gutiérrez
Subdivisión por interpolación
Los ejemplos hasta ahora se llaman subdivisión por interpolación: los puntos originales se mantienen, y se insertan nuevos
Otros esquemas (basados en splines) insertan puntos nuevos y mueven los viejos
![Page 9: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/9.jpg)
Diego Gutiérrez
Subdivisión por interpolación
Similar en parte a la interpolación típica de ciertas geometríasfractales
![Page 10: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/10.jpg)
Diego Gutiérrez
Subdivisión por interpolación
Ejemplo 1: nuevos vértices se insertan a ¼ y ¾ de la distancia entre los viejos¿Qué curva forma en el límite?
[Reisenfeld75]: B-spline cuadrática uniforme cuyos puntos de control son los de la curva original
![Page 11: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/11.jpg)
Diego Gutiérrez
Subdivisión por interpolación
Ejemplo 2: cada triángulo se divide en 4, con nuevos vértices a ½de la distancia de los viejos
![Page 12: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/12.jpg)
Diego Gutiérrez
Subdivisión por interpolación
Ejemplo 3: De nuevo, cada triángulo se subdivide en 4. Peroahora la posición de cada vértice viene dadpor una combinaciónconvexa de los vérticesoriginales [Loop87]
En el límite, el plano tangente a la superficiees contínuo
![Page 13: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/13.jpg)
Diego Gutiérrez
Subdivisión por interpolación
Ejemplo 4: Extensión del anterior pero incorporando aristas durasen la superficie final [Hoppe et al. 94].
Los vértices originales se “marcan” como pertenecientes a una cara, arista o vértice de la superficie final. En función de esemarcado, se les aplican diferentes reglas de subdivisión
![Page 14: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/14.jpg)
Diego Gutiérrez
Ventajas
Eficiencia: los cáculos sólo dependen de unos pocos puntoscercanos al punto en cuestión
Topología arbitraria: Cualquier número genusCualquier grafo formado por vértices y aristas
![Page 15: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/15.jpg)
Diego Gutiérrez
Subdivisión como convolución de B-splines
Decíamos: otros esquemas (basados en splines) insertan puntos nuevos y mueven los viejos
La mayoría de las técnicas de subdivisión actuales están basadasen una generalización de las curvas B-spline
![Page 16: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/16.jpg)
Diego Gutiérrez
Subdivisión como convolución de B-splines
Las funciones base B(t) se eligen de manera que las curvasresultantes sean siempre contínuas y la influencia de los puntosde control sea local (recordad la explicación sobre Bezier)
B-splines
La forma de asegurar continuidad de grado n es definir polinomiosderivables hasta ese grado (cuanto mayor el orden de los polinomios, mayor la coninuidad que aseguramos)
![Page 17: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/17.jpg)
Diego Gutiérrez
Subdivisión como convolución de B-splines
Empecemos por la más sencilla: piecewise constant
Recordemos qué es la convolución:
![Page 18: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/18.jpg)
Diego Gutiérrez
Subdivisión como convolución de B-splines
Una función base B-spline de grado n puede obtenerse mediantela convolución de la función base de grado n-1 con la función B0
Ejemplo: la B-spline de grado 1 se obtiene mediante la convolución de B0 consigo misma
![Page 19: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/19.jpg)
Diego Gutiérrez
Subdivisión como convolución de B-splines
![Page 20: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/20.jpg)
Diego Gutiérrez
Subdivisión como convolución de B-splines
Esta observación puede convertirse en el núcleo del algoritmo de subdivisión (convolucionando funciones piecewise linear)
![Page 21: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/21.jpg)
Diego Gutiérrez
Polígonos, NURBS o subdivisión?
Antes, este tipo de objetos se modelaban con NURBSLas superficies de subdivisión (subdees) se apoyan en mallaspoligonales en (casi) todos los software 3D
Polígonos vs. NURBS vs. Subdivisión???
![Page 22: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/22.jpg)
Diego Gutiérrez
Polígonos, NURBS o subdivisión?
Polígonos
Crear formas complejas es relativamente sencilloOperaciones booleanas permitidasNo hay límites intrínsecosNecesita almacenar muchos datos para crear superficies complejas
![Page 23: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/23.jpg)
Diego Gutiérrez
Polígonos, NURBS o subdivisión?
NURBS
Poca memoria, fácil cómputoCoordenadas (u,v) inherentesCiertas limitaciones (tangencias, booleanos...)Al igual que el resto de superficies parametrizables, sólo pueden ser topológicamente equivalentes a un plano, cilindro o toro.
PIXAR: los recortes (trimming) son caros y muy sensibles a los errores numéricosPIXAR: Es difícil mantener la suavidad en las interesecciones de parches NURBS cuando se animan
![Page 24: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/24.jpg)
Diego Gutiérrez
Polígonos, NURBS o subdivisión?
Polígonos, NURBS o subdivisión?
![Page 25: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/25.jpg)
Diego Gutiérrez
Polígonos, NURBS o subdivisión?
Subdivisión
Más baratas de almacenar que los polígonosNo requieren trimming para formar toplogías complejasAnimación superior a las NURBS (niveles de continuidad Cn
mayores)Se consigue la facilidad de uso de los polígonos con la suavidad y continuidad de las NURBS
![Page 26: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/26.jpg)
Diego Gutiérrez
Polígonos, NURBS o subdivisión?
Subdivisión
No hay coordenadas (u,v) intrínsecas: la libertad topológica de las superficies de subdivisión hace que no puedan parametrizarse para texturizarlas
![Page 27: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/27.jpg)
Diego Gutiérrez
Introducción
![Page 28: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/28.jpg)
Diego Gutiérrez
Introducción
![Page 29: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/29.jpg)
Diego Gutiérrez
Polígonos, NURBS o subdivisión?
Una mano con subdivisiónLa malla poligonal se usa para texturado
![Page 30: Grupo de Informática Gráfica Avanzada Universidad …webdiis.unizar.es/~diegog/ficheros/teaching/subdees.pdfLas funciones base B(t) se eligen de manera que las curvas resultantes](https://reader033.fdocuments.co/reader033/viewer/2022042003/5e6e9e90daa41c0e88512723/html5/thumbnails/30.jpg)
Diego Gutiérrez
Polígonos, NURBS o subdivisión?