etereaetereaaboutcontactworkstrainingresourceseterealinksmoreetereashop
Home > Training > Técnicas modelado por subdivisión > Introducción al modelado por subdivisión
Etérea Workshops Banner
Por favor: no hagas un copiar-pegar de este material en tu página, weblog o foro sin mi permiso. En su lugar puedes incluir un link a esta página.
1. Introducción al modelado por subdivisión
2. Cómo crear agujeros circulares
3. Cómo trabajar un texto por subdivisión
4. Pinceles segmentados y Vertex Map Falloffs
  5. Creación de una rueda: llanta y cubierta
6. Las piedras y rocas de Fallingwater
7. Creación de una carretera de montaña (parte 1)
8. Creación de una carretera de montaña (parte 2)

Introducción al modelado por subdivisión
Diferencias con el modelado poligonal clásico (“hard surface modeling”) y con el modelado NURBS

Antes de entrar de lleno en un despliegue de técnicas y trucos en torno al modelado por subdivisión de superficies, vamos a tratar de aclarar qué es exactamente este tipo de modelado y sobre todo: en qué se parece y en qué se diferencia de otros tipos de modelado —como el modelado poligonal clásico o el modelado NURBS— y pará qué propósitos es especialmente adecuado uno u otro sistema.

niveles de subdivisión
Tal como explica la Wikipedia, una superficie de subdivisión es un método de representación de una superficie suavizada, “refinada”, a partir de una malla poligonal más sencilla. Tal como vemos en el gráfico superior, partimos de un simple cubo —6 caras— y con un primer nivel de subdivisión obtenemos una nueva figura, todavía bastante tosca, con 24 caras. El posicionamiento de los nuevos vértices se calcula mediante unos modelos de refinamiento matemático, bien por aproximación o bien por interpolación.

Conforme aplicamos sucesivos niveles de subdivisión la figura va haciendose más suavizada y se van incrementando el número de vértices y polígonos, aunque en todo momento la geometría que está controlando el conjunto sigue siendo nuestro cubo inicial: si movemos cualquier da sus vértices se modificará el aspecto de la geometría subdividida resultante.

Uno de los sistemas que más se ha extendido es el conocido como “Catmull-Clark Subdivision”, que fue desarrollado en 1978 aunque no fue “presentado al gran público” por Pixar hasta 1997 con su corto “El Juego de Geri”, ganador de un Óscar. Desde entonces este sistema de modelado se ha popularizado rápidamente hasta encontrarse disponible en las principales aplicaciones de modelado 3D.
niveles de subdivisión
Una de las muchas ventajas que incorpora este método de construcción es que, en principio, seguimos partiendo de un modelado poligonal: se siguen empleando las mismas herramientas que ya existían para el modelado poligonal clásico (bridge, bevel, extrude, etc). Pero por contra, la forma de emplearlas y los procesos de trabajo cambian radicalmente: debemos emplear una mentalidad y metodología completamente diferentes en la aproximación al modelado. De hecho es muy importante dejar de lado muchos de los procedimientos que hubiéramos podido aprender modelando con polígonos “rígidos” o con superficies NURBS.
niveles de subdivisión
fijaos cómo a partir de una figura simple, como era nuestro cubo, creando un agujero y añadiendo varios loops extra, una vez que subdividimos la figura resultante generamos un cilindro hueco y perfectamente redondeado. De hecho este sistema es ideal para producir cualquier tipo de superficie redondeada, por eso se ha hecho tan popular —prácticamente se ha estandarizado— en el modelado de personajes. Aunque no sólo sirve para eso ;-)

Para entender mejor cómo funciona el sistema de subdivisión de superficies vamos a compararlo con otros dos sistemas de trabajo: el modelado poligonal clásico comunmente conocido como “hard surface modeling” y el modelado NURBS.
Comparativa
Aquí podéis ver tres objetos iguales modelados siguiendo los tres sistemas:

• En el primero se han empleado dos perfiles circulares y un perfil extra que define el recorrido para generar una típica superficie NURBS mediante la típica operación de “sweep”. No existen realmente polígonos, aunque por lo general todos los motores de render deben convertir estas superficies a triángulos para poder ser representadas. La gran ventaja de este tipo de superficies es que están definidas matemáticamente: por mucho que nos acerquemos siempre se ven perfectas. Si las comparamos con una superficie poligonal vendría a ser como comparar un dibujo de Illustrator (vectorial, compuesto de trazados bèzier, siempre “perfectos”) con una imagen de Photoshop (bitmap, compuesta de pixels, que si nos acercamos demasiado se muestran en todo su esplendor ;-))

• En el segundo vemos esa misma superficie definida mediante polígonos, cuadrángulos, en lo que sería una superficie poligonal clásica (hard surface). Ese objeto, a esta distancia se visualiza perfectamente, pero si nos acercamos mucho llegarían a hacerse evidentes los polígonos, especialmente en el contorno de la superficie.

• Y en el tercer caso tenemos otra superficie igual pero definida mediante subdivisión. Vemos una malla poligonal simple, tosca —en verde— que está subdividida varias veces hasta generar una superficie mucho más densa y refinada. En este caso, para generar la superficie de control —habitualmente conocida como “cage”— tendremos que usar unos procedimientos similares a los que hayamos podido emplear para la anterior (una operación de “bridge” entre los circulos inicial y final), sólo que el número de vértices de esos círculos y el número de pasos del bridge serán muy distintos.

Pero, como ya he comentado antes, no siempre los métodos de creación de un modelado poligonal clásico y otro por subdivisión son equivalentes. Pueden llegar a ser muy (MUY) diferentes. Curiosamente, y tal y como podremos comprobar en el siguiente apartado, algunas veces pueden encontrarse más similitudes entre un modelado NURBS y otro poligonal clásico, que entre éste último y un modelado por subdivisión (para una misma pieza).

Vamos a ver a continuación como crear un mismo objeto sencillo siguiendo estos tres sistemas de trabajo:
A. Proceso de modelado NURBS
Nurbs proceso 01   Nurbs proceso 02
A1.
Se podría decir que el gran paradigma de un modelado NURBS son los perfiles. Muchas veces pienso que de la misma manera que al pintar con un aerógrafo (y me estoy refiriendo a un aerógrafo real, no el que viene con Photoshop) inviertes el 95% del tiempo para crear las máscaras, en el caso del modelado por NURBS el mismo 95% del tiempo lo pasaremos creando unos buenos perfiles que nos sirvan de base para generar las superficies.

No es el caso de este sencillo ejemplo, donde tan sólo tenemos unos cuantos rectángulos y un segmento curvo… :-)
  A2.
Con esos perfiles podemos proceder a generar las distintas superficies y sólidos de partida mediante sencillas operaciones de extrusión. En el caso de proyectos más complejos deberemos usar lofts, sweeps, revolves… y todo el arsenal de herramientas de las que disponemos para este tipo de modelado.

Fijaos que realmente no estamos trabajando con polígonos, y de hecho, las líneas intermedias que aparecen entre las superficies —las isoparmas— están ahí unicamente para tener una mejor visualización de la estructura.
Nurbs proceso 03   Nurbs proceso 04
A3.
Una vez tenemos esos objetos iniciales procedemos a aplicar una serie de operaciones booleanas (split, union, exclusion, etc). Fijaos que el conjunto de superficies es muy “limpio”. La gran ventaja del modelado NURBS frente al poligonal es que podemos realizar booleanas entre cualquier tipo de superficie con toda comodidad, con muy pocas limitaciones.
  A4.
A continuación podemos aplicar diferentes blends para obtener las principales zonas en curva de nuestro objeto. Nuevamente, y al igual que ocurre con las operaciones booleanas, las operaciones de redondeo son muy ágiles y versátiles cuando empleamos NURBS, frente a polígonos.
Nurbs proceso 05   Nurbs proceso 06
A5.
Añadimos los detalles finales redondeando todas las aristas para que no haya ninguna superficie “cortante”. En los modeladores avanzados existen sistemas de redondeado que permiten incluso aplicar radios variables a lo largo del edge a redondear.
  A6.
Y aquí tenemos el render final. Fijaos que existe una pequeña imperfección que no me he preocupado de corregir cerca de la esquina en primer plano (se distingue mejor en la anterior vista). En realidad la definición de este conjunto de superficies es “perfecta”, lo que ocurre es que la malla poligonal que el programa ha generado para renderizar (y para mostrar la vista OpenGL) no es lo suficientemente densa. Bastaría con incrementar la densidad de esa malla para corregir ese pequeño defecto.
B. Proceso de modelado poligonal clásico (hard surface modeling)
Modelado poligonal proceso 01   Modelado poligonal proceso 02
B1.
Tal y como hemos adelantado antes, algunas veces el modelado NURBS y el poligonal clásico se parecen más entre sí que si los comparamos con el de subdivisión. Esta pequeña pieza es un buen ejemplo de ello. Aunque, cuidado, no siempre es así…

Como vemos empezamos con unas formas base de partida, 2D. fijaos que ahora ya he añadido la curvatura de las dos esquinas en primer plano: esto lo hago porque sé que aplicar redondeos entre el arco curvo y los laterales me plantearía muchos problemas si lo quisiera hacer a posteriori. Los polígonos plantean muchos problemas en los redondeos, si los comparamos con las NURBS.
  B2.
Hemos extruido la geometría inicial y llegamos a un punto muy parecido al A3, sólo que en este caso distinguimos claramente los polígonos.

Una característica exclusiva del modelado poligonal clásico, que constituye una de sus principales limitaciones o handicaps, es que debemos decidir la resolución, el nivel de detalle que le damos a todas nuestras superficies curvas con bastante antelación: si más adelante necesitamos añadir un número mayor de polígonos a ese arco de la base será algo bastante engorroso. Es necesario anticiparnos a nuestras necesidades.
Modelado poligonal proceso 03   Modelado poligonal proceso 04
B3.
Aplicamos los redondeos principales y estamos igual que en el paso A4. Como son curvaturas con un radio bastante amplio decido añadir un número elevado de pasos, concretamente 16. Esta es la gran diferencia con las NURBS, por lo demás, para esta pieza todo es similar.
  B4.
Y finalmente añadimos los redondeos finales, de menos radio, para “matar” las esquinas cortantes. En este caso he empleado sólo 4 pasos y luego he añadido un bevel de un solo paso hacia el interior, para que no aparezcan artifacts en el shading de la superficie: si os fijáis, el polígono superior de la base tiene muchísimos lados y si no le añadiera ese “bevel inside” se verían los triángulos de descomposición tanto en la vista OpenGL como en el render. Este bevel extra no es necesario en todos los programas, pero en este caso —Modo— es muy conveniente.
Modelado poligonal proceso 05   Modelado poligonal proceso 06
B5.
En el modelado poligonal se hace imprescindible el “smoothing”, suavizado de las superficies, para no tener que incrementar tanto el número de polígonos necesarios en una correcta visualización de las superficies curvas.
  B6.
Y el render final. Para este punto de vista resulta perfecto. Pero ahora imaginad que queremos hacer una animación y acercarnos muchísimo a cualquiera de su partes, como si fuéramos una hormiguita que camina por su superficie. Os aseguro que entonces ya no se vería tan perfecto, especialmente en los contornos. Esta es una de las limitaciones de este tipo de modelado.
C. Proceso de modelado por subdivisión de superficies
Modelado subdivisión proceso 01   Modelado subdivisión proceso 02
C1.
Como he mencionado antes, en el modelado por subdivisión de superficies es necesario cambiar completamente el flujo de trabajo (aunque sigamos empleando polígonos como materia prima y prácticamente las mismas herramientas que en el poligonal).

En este caso no partimos de perfiles sino de una forma cúbica con unas proporciones adecuadas para la base de nuestra pieza.
  C2.
A partir de ahí comenzamos a añadir una serie de loops, mediante la herramienta slice. Fijaos que mediante esta cuadrangulación de la superficie me preparo unos polígonos que me servirán para la siguiente operación de extrude, hacia arriba, en el caso de los polígonos en naranja y hacia el fondo en el caso del azul.
Modelado subdivisión proceso 03   Modelado subdivisión proceso 04
C3.
Aquí hemos avanzado un poco más. Se trata de ir creando un armazón básico, yendo siempre de menos a más, de modo que al ser subdividido nos acerquemos a la forma deseada. Desde luego no resulta un método tan directo e intuitivo como los anteriores, especialmente al principio (y muy especialmente si ya estás acostumbrado a los otros métodos de modelado).
  C4.
Seguimos añadiendo detalle, mediante sucesivas operaciones de slice y ya vemos cómo nos vamos acercando al objeto final. Al modelar para subdividir es muy conveniente mantener siempre que sea posible todos los polígonos con 4 lados. Hay gente que en esto es tremendamente estricta: “sólo se deben usar cuadrángulos, jamás un triángulo o polígonos de más de 4 lados”. Por mi experiencia puedo deciros que muchas veces da mejor resultado un polígono de 5 lados o de 3 en un determinado lugar, que uno de 4.
Modelado subdivisión proceso 05Nurbs proceso 01   Modelado subdivisión proceso 06
C5.
Si hubiésemos activado la subdivisión en el estadio anterior (C4) hubiéramos obtenido un objeto completamente redondeado, “blando”. Por eso es necesario añadir unos edges extra que nos permitan controlar la tensión en determinadas zonas y definir sus redondeos. Aplicamos varios bevels, pero con muy pocas caras —fijaos que sólo hay 2—.
  C6.
Al aplicar entonces la subdivisión vemos cómo —casi de un modo mágico— aparece nuestro objeto perfectamente suavizado, especialmente si hemos activado el smooth de superficies. En un bueno modelador especializado en subdivisión podemos seguir trabajando y corregir cualquier detalle indistintamente tanto sobre la superficie subdividida como sin subdividir.
Modelado subdivisión proceso 07   Modelado subdivisión proceso 08
C7.
En este tipo de modelado es fundamental comprender un concepto muy importante: el de la topología. Dicho de un modo sencillo: es importante que exista un flujo ordenado y consistente entre todas las líneas que definen nuestra geometría. Esto será beneficioso para muchas cosas: para garantizar una correcta continuidad en las curvaturas, para definir mejor nuestros mapas UV, para poder deformar mejor las superficies (algo fundamental en la animación de personajes).
  C8.
Por poner un ejemplo, existen multitud de estudios acerca de cómo debe ser el flujo correcto de líneas en el modelo de un rostro humano: anillos en torno a los ojos y los labios, líneas de flujo desde el puente nasal hacia la mandíbula inferior, etc

Para ciertos “puristas” de la subdivisión nuestra pieza contendría algunos defectos, como la presencia de algún polígono de 3 ó 4 lados, pero creo que es indudable que el flujo de las líneas es bastante correcto. Fijaos que hasta casi se podría definir como de “elegante” :-)
Modelado subdivisión proceso 09   Modelado subdivisión proceso 10
C9.
Y aquí tenemos nuestro render. Una característica presente en algunos programas es que pueden subdividir nuestra pieza dinámicamente en el momento del render: si estamos muy alejados se aplicaran menos niveles de subdivisión y si nos acercamos se irán incrementando. En el caso de Modo se conoce como “Adaptive Subdivisión”, y hay que tener cuidado con ella porque aunque está pensada para proporcionarnos siempre un acabado super-suavizado, algunas veces también nos puede originar modelos de varios millones de polígonos, cuando realmente no se necesita tanto. Algunas veces puede merecer la pena desactivar esa opción.
  C10.
Como habréis visto, el modelado por subdivisión, para esta pieza en concreto, no ha resultado especialmente directo e intuitivo. Han sido más sencillos los modelados NURBS y poligonales. Pero repito: esto depende totalmente de la naturaleza y características de nuestro objeto (ahora hablaremos algo más sobre ello).

En cualquier caso, una vez obtenida nuestra forma básica resulta extremadamente sencillo introducir deformaciones o alteraciones sobre ella bastante difíciles de obtener con los otros sistemas. Es todo una cuestión de pros y contras :-)

Acabamos de realizar un pequeño ejercicio: modelar un mismo objeto siguiendo 3 metodologías de modelado diferentes. Para la piececita que hemos creado yo diría que el modelado NURBS era el más adecuado, sencillo y directo y el modelado por subdivisión, por contra, el más “engorroso”, especialmente si lo viéramos desde la óptica de un diseñador industrial…

En realidad podemos modelar casi cualquier objeto con cualquiera de estos 3 métodos, pero es evidente que ciertos objetos, que ciertas geometrías, resultan más sencillas y asequibles con unos sistemas que otros. A mi siempre me gusta decir que no hay una herramienta que sea la mejor para todo.

Después de unos cuantos años usando los 3 sistemas mi opinión es la siguiente:
Los NURBS ideales para diseño industrial
El modelado NURBS resulta ideal para el DISEÑO industrial. Y fijaos que pongo en mayúsculas la palabra DISEÑO. No tiene nada que ver modelar una coche fijándonos en los típicos blueprints y fotografías que podemos encontrar por la red (esto no es diseño, es una labor más o menos “mecánica” de representación de un conjunto de formas ya preestablecidas, pre-diseñadas) con una verdadera labor de diseño industrial.

Para “calcar” un objeto ya creado anteriormente, para modelar un coche partiendo de planos y fotos, puede resultar indiscutiblemente práctico el utilizar sistemas de subdivisión. De hecho así están realizados la mayoría de los fantásticos modelos que nos podemos encontrar por montones de páginas en la red.

Sin embargo, para DISEÑAR un coche (o un yate, o un aspirador…) ayudandonos de las herramientas de modelado, es mucho más útil un sistema basado en NURBS. Un diseñador que debe imaginar —CREAR— tales conjuntos de superficies prefiere partir de perfiles clave, que definen la estructura básica, el flujo de líneas del modelo, para después desarrollar las superficies resultantes.

En mis modelos Sentinel, Shark y Nixus he empleado NURBS para su desarrollo. La verdad es que en esos momentos yo no contaba con una poderosa herramienta de modelado por subdivisión (ahora estoy manejando Modo), pero si tuviera que volver a crear, a DISEÑAR unos objetos como estos, volvería a utilizar NURBS.

Repito que esto es sólo una opinión mía, pero si indagais un poco descubriréis que en la industria del automóvil, y en general en el ámbito del diseño industrial, las herramientas más utilizadas son las NURBS y el modelado sólido-paramétrico.
Los NURBS ideales para diseño industrial   Los NURBS ideales para diseño industrial
Uno de los ejercicios más “puñeteros” y por otro lado aparentemente sencillos que se le puede exigir a un modelado poligonal, ya sea clásico o por subdivisión, es el siguiente:

— Crear una esfera.
— Crear otro objeto curvo que interseccione con ella (un cilindro u otra superficie curva como la del gráfico, en verde).
— Realizar una operación booleana para segmentar la esfera en dos porciones.
Y ahora viene la guinda:
— Redondear los edges, las aristas resultantes.

Este sencilla secuencia de operaciones es “pan comido” trabajando con NURBS, unos cuantos clicks y listo. Sin embargo nos puede hacer sudar al realizarlo mediante modelado poligonal, rígido o subdividido ;-)
Los polígonos ideales para arquitectura
El modelado poligonal clásico, hard surface, es perfecto para modelar arquitectura (siempre y cuando no intentemos hacer el Guggenheim de Bilbao o el Pabellón Puente de Zaha Hadid en Zaragoza…). En la arquitectura, en cualquiera de las viviendas y edificios que nos rodean, generalmente solemos encontrar superficies planas, estructuras ortogonales, curvas sencillas de revolución, etc. Elementos que son idóneos para el modelado por polígonos. Toda la parte arquitectónica de mi proyecto Fallingwater está modelada empleando polígonos “simples”. Para el terreno, las rocas y piedras y para algunos objetos del interior sí se han empleado subdivisiones.
La subdivisión perfecta para superficies orgánicas
En general podría decirse que el modelado por subdivisión es ideal para crear superficies orgánicas. Pero orgánicas no sólo en un sentido estricto (una cabeza o cuerpo humanos o de cualquier animal) sino también en un sentido más amplio: cualquier tipo de objeto con gran cantidad de superficies curvadas más o menos complejas, como un automóvil, un avión o un secador de pelo. Aunque el modelado por NURBS está especialmente indicado para DISEÑAR este tipo de objetos, como ya hemos comentado, la verdad es que modelarlos a partir de unas cuantas imágenes de referencia (donde ya no es necesaria esa labor de diseño) resulta muchas veces más práctico y fluido mediante un sistema de subdivisión de superficies.

Todas las escenas y objetos de I Love Japan están íntegramente modeladas usando subdivisión de superficies y en la galería de Luxology podéis encontar buenos ejemplos tanto de criaturas orgánicas, como de vehículos u objetos industriales, casi todos ellos realizados mediante subdivisión de superficies.

En cualquier caso existen cantidad de situaciones en las que resulta difícil decidirse por uno u otro sistema de trabajo, porque desde luego cada uno de ellos tiene sus ventajas e inconvenientes y no siempre está tan clara la elección. En ciertos casos puede llegar a resultar conveniente realizar una porción de nuestra escena mediante una técnica y usar otra distinta para otras partes, usando la mejor herramienta para cada situación.

Etérea Workshops Banner
Por favor: no hagas un copiar-pegar de este material en tu página, weblog o foro sin mi permiso. En su lugar puedes incluir un link a esta página.
All images copyright Cristóbal Vila