6. Conclusiones y trabajos futuros
6.1.2. Limitaciones
Pol´ıgonos deformados en las zonas de cracks
El algoritmo de poligonizaci´on Marching Quads trata de construir quads con una morfolog´ıa cercana a la equilateralidad para que la calidad de la malla final sea aceptable. Todos los resultados del cap´ıtulo anterior que muestran mallas con cracks muestran que, efectivamente, la calidad de los quads es bastante buena.
Sin embargo, hay situaciones en las que el algoritmo es incapaz de crear un buen quad dejando un agujero en la malla. El algoritmo de cierre de cracks (ver figura 5.3) permite cerrar correctamente todos los agujeros, aunque para ello se ve forzado a la construcci´on de pol´ıgonos algo deformes y algunos tri´angulos. A pesar de ello, la calidad de la malla sigue manteniendo una correcta topolog´ıa. Adem´as, modelos de animaci´on dise˜nados con herramientas CAD por modeladores tambi´en incluyen algunos pol´ıgonos triangulares.
Limitaciones en Marching Quads b´asico
El algoritmo b´asico, debido a su homogeneidad en el tama˜no de los pol´ıgonos, tiene el inconveniente de que en modelos muy complejos, donde existe una consi- derable diferencia de tama˜no entre la esfera de mayor y menor tama˜no, se obtiene una malla con un n´umero bastante elevado de pol´ıgonos. Esto es debido a que el tama˜no es escogido en base a la esfera m´as peque˜na, lo que provoca que en las zonas de superficies de menor curvatura (esferas grandes) se creen pol´ıgonos dema- siado peque˜nos. Estos quads construidos en zonas planares, podr´ıan haber sido de un tama˜no superior sin que ello supusiese una notable perdida de fidelidad con el modelo.
En la figura 6.1 se muestra este problema en el modelo de ´arbol, donde los extremos de las ra´ıces del ´arbol est´an formados por primitivas muy peque˜nas en
6.1. CONCLUSIONES 85 comparaci´on con las primitivas de la copa del ´arbol. Esto provoca que todo el modelo contenga un tama˜no diminuto de quads. Adem´as, que la malla crezca excesivamente en cuanto a n´umero de pol´ıgonos, tiene el inconveniente de que el algoritmo se hace muy pesado en cuanto a c´alculo, obteni´endose el modelo en tiempos desorbitados.
Figura 6.1: Problema de poligonizaci´on no adaptativa en modelos complejos. El tama˜no de quad es ajustado a la zona de mayor curvatura, resultando en un n´umero de pol´ıgonos excesivo, y un tiempo de c´alculo, excesivos.
Se podr´ıa pensar en utilizar un tama˜no basado en el tama˜no medio de las primi- tivas. Aunque esto permitir´ıa obtener quads mayores que minimizaran el n´umero de
pol´ıgonos, y por tanto el tiempo de obtenci´on de la malla, tendr´ıa el inconveniente de que se perder´ıan muchas caracter´ısticas morfol´ogicas del modelo, como ser´ıa un recorte en las ra´ıces del modelo de ´arbol.
Limitaciones en Marching Quads basado en simetr´ıa
La mejora de simetr´ıa obtiene mallas mejor estructuradas y orientadas con el plano de simetr´ıa que compar´andolas con malla de quads aleatorios (ver imagen 5.6). Esta caracter´ıstica permite que la malla se deforme m´as suavemente en sistemas de animaci´on.
Sin embargo, la mejora de simetr´ıa no siempre obtiene quads correctamente orientados en el modelo, ya que se da prioridad a las aristas seg´un la cercan´ıa al plano de simetr´ıa antes que a la orientaci´on de ´estas. Este es el caso del ejemplo inferior de la figura 5.8, donde el tronco del ´arbol no tiene bien orientados los quads.
Limitaciones en Marching Quads adaptativo
La soluci´on al problema del algoritmo b´asico de generaci´on de mallas con un alto n´umero de pol´ıgonos de peque˜no tama˜no, est´a en la mejora adaptativa presentada en este trabajo, donde el tama˜no de los quads es adaptado a la zona local del modelo. En la figura 5.8 puede observarse el mismo modelo de ´arbol que el de la figura 6.1 pero obtenido de forma adaptativa. De este modo se obtiene una malla topol´ogicamente correcta con un n´umero de pol´ıgonos mucho menor, y por tanto en un tiempo mucho m´as bajo.
Sin embargo, esta caracter´ıstica adaptativa tiene una limitaci´on en modelos don- de hay cambios bruscos de grosor hacia una zona mucho m´as estrecha. En estos casos, el algoritmo puede llegar a recortar esta zona estrecha. La figura 6.2 mues- tra los modelos de humanoide sentado y de perro, los cuales se presentaron en las figuras 5.10 y 5.11, donde se muestran zonas estrechas recortadas por usarse una resoluci´on de tama˜no de quad alto.
El ra´ız de este problema reside en la anticipaci´on del algoritmo adaptativo, ya que la curvatura es anticipada mediante el tama˜no quad frontera donde se pretende anexar el nuevo quad. En zonas donde el quad frontera se encuentra en una esfera
6.1. CONCLUSIONES 87 de tama˜no mucho mayor a la esfera donde se van a proyectar los nuevos v´ertices, el quad generado puede ser que no sea capaz de alcanzar la superficie impl´ıcita, siendo descartado (ver caso (a) de la figura 6.4).
El motivo de que no se pueda encontrar puntos sobre la superficie impl´ıcita en zonas muy estrechas, es debido a que se busca el corte con la superficie impl´ıcita se busca en el plano perpendicular a la arista frontera eb (ver secci´on 3.3). Por tanto,
la circunferencia donde se buscan los puntos cercanos no corta a la superficie en la zona estrecha.
Una posible soluci´on es la de dar m´as resoluci´on a la malla decrementando el factor de tama˜no de quad, para facilitar al algoritmo que alcance la superficie impl´ıcita en zonas muy estrechas. Este es el caso de los modelos de humanoide sentado y perro de las figuras 5.10 y 5.11, donde se pudo obtener una malla completa del modelo incrementando la resoluci´on general de la malla.
Sin embargo, pueden encontrarse modelos donde el algoritmo sea incapaz de obtener la malla completa, o si fuese posible, entonces se generar´ıan en tiempos de c´omputo alto. Este es el caso de un modelo de perro alternativo, mostrado en la figura 6.3, del cual no se ha podido obtener una malla completa utilizando un factor de 10 % que genera un numero de pol´ıgonos bastante elevado (aproximadamente 20000).