4.6. Simulaciones Físicas
Una de las características que más sorprenden de Blender es el módulo de simulaciones físicas integrado. Cuando enseño a los compañeros de trabajo este grupo de funcionalidades muchos me preguntan: "¿En serio que esto es libre?". Efectivamente es libre y puede competir en muchos aspectos con soluciones de simulación física privativas de famosos paquetes de diseño 3D. Las principales propiedades de simulación física se encuentran en el grupo de botones de Objeto ![]() Figura 01. Grupos de pestañas de las opciones de simulación física. En estos botones se distinguen cuatro grupos de pestañas (ver Figura 1); de izquierda a derecha tenemos la primera pestaña Collision sirve para especificar que el objeto se tendrá en cuenta en el motor de simulación a la hora de calcular las colisiones. La pestaña de su izquierda Fields sirve para definir campos de energía (como por ejemplo Viento). El siguiente grupo de pestañas Softbody sirve para añadir cuerpos blandos (semi-rígidos). Las pestaña de Collision y Solver agrupadas con Softbody permiten indicar propiedades particulares para ese tipo de objetos. No debe confundirse con la pestaña Collision de la izquierda. El grupo de pestañas de Cloth permite crear simulaciones físicas de tela. Finalmente, el grupo Fluid permite realizar simulaciones físicas de fluidos. Se podría hacer un curso de más de 100 horas para empezar a sacar el verdadero rendimiento de los motores de simulación física de Blender. En los siguientes apartados nos centraremos en ver algunas de sus capacidades básicas a modo de tutorial y comentaremos algunos de los controles principales.
Cuerpos Blandos (Soft Body)![]() Figura 02. Pestaña Collision. El simulador de cuerpos blandos (o soft bodies) permite realizar la simulación de colisiones de cuerpos con cierto grado de elasticidad. Veremos cómo utilizar este módulo para simular también cuerpos rígidos. Los objetos que deban ser tenidos en cuenta a la hora de simular colisiones deberán tener activo el botón Collision de la primera pestaña Collision de la Figura 1. Si el botón está activo, aparecerán nuevos controles como se muestra en la Figura 2. En esta pestaña se distinguen dos grupos de opciones; las que se aplicarán a los cuerpos blandos y telas y las que se aplicarán a los sistemas de partículas. Damping es el factor de amortiguación (si se establece alto, el objeto se comportará como una cama elástica) Friction es el factor de fricción con otros cuerpos. Inner y Outer controla el volumen que se aplicará a las caras poligonales para simular que tienen volumen y calcular así de forma correcta la colisión. ![]() Figura 03. SoftBody. La pestaña SoftBody (ver Figura 3) permite controlar las opciones concretas de este tipo de cuerpos. Algunos parámetros interesantes de esta pestaña son:
A continuación veremos un ejemplo de uso de SoftBodies. Crearemos una escena sencilla y modificaremos algunos parámetros para mostrar el efecto que produce sobre la animación resultado. Recordemos que para reproducir la animación se puede realizar mediante el botón
![]() Figura 04. Cubo gelatinoso. Aplicando mallas de mayor resolución y jugando con los parámetros de nivel de rigidez de los muelles se pueden obtener simulaciones de tipo "gelatina". La Figura 4 muestra algunos fotogramas de una animación realizada aplicando 4 niveles de subdivisión al cubo del video anterior. Queda como ejercicio propuesto al alumno que experimente con los parámetros explicados anteriormente y con diferentes objetos simples (con bajo número de polígonos). El cálculo de la colisión depende de la complejidad del modelo por lo que, para probar opciones lo mejor es emplear objetos con bajo número de vértices. Simulación de Telas![]() Figura 05. Opciones Cloth. ![]() Figura 06. Pestaña Collision. La simulación de telas es muy parecida a la simulación de cuerpos semirígidos que hemos visto anteriormente, pero funciona mejor con mallas abiertas (como planos, por ejemplo), lo cual tiene mucho sentido ya que la "ropa" normalmente se modela con superficies abiertas. Las opciones de simulación se pueden ver en la Figura 5. Blender dispone de configuraciones prefijadas de materiales que pueden seleccionarse en la lista desplegable de Material Preset como cuero (leather), tela vaquera (denim), goma (rubber), algodón (cotton) o seda (silk). La calidad de la simulación se establece en el parámetro Quality (valores más altos requieren mayor tiempo de cómputo). Aunque requiere más tiempo de cálculo es aconsejable activar el botón Enable selfcollisions de la pestaña Collision del grupo de pestañas de Cloth. Este botón, como su nombre indica, calcula las colisiones producidas entre los pliegues de la tela, obteniendo resultados realistas. Como la simulación se realiza a nivel de cara poligonal, es interesante que la malla de la tela tenga resolución suficiente (pero no excesiva, ya que influirá en el tiempo de cómputo de la simulación). Veamos a continuación algunos ejemplos de uso del simulador de tela. Como se puede ver en el siguiente video, es posible emplear el simulador con otros objetos que tengan la propiedad de Collision activa, como el cubo rotando del ejemplo. En
![]() Figura 07. Paint (Pesos). Una funcionalidad avanzada que aún no hemos visto es la capacidad de establecer factores de aplicación de deformaciones mediante "pesos". Empleando un código de color, se aplica un factor de aplicabilidad de la deformación a cada vértice del modelo, empleando el modo de Pintado de Pesos Activando el botón Pinning of cloth de la pestaña Cloth (Figura 5) Blender tendrá en cuenta el peso de los vértices para establecer la deformación adecuada. De este modo es muy sencillo animar cualquier tela que esté "colgada" (como banderas, cortinas, ...) o elementos de tela con los que interactúen los personajes de la escena (por ejeplo, un pañuelo sujeto por una esquina). En el siguiente video de ejemplo se utiliza esta funcionalidad. Se define que las esquinas del plano tendrán influencia 1 (estarán fijas), estableciendo el parámetro Weight de la pestaña Paint a 1
FluidosEl simulador de fluidos de Blender es una de las características más impresionantes del grupo de botones de simulación. Este módulo crea una malla poligonal para cada frame de la animación. Es un proceso computacionalmente costoso y requiere definir una serie de elementos básicos (ver Figura 8):
![]() Figura 08. Pestañas de simulación de Fluidos. En el siguiente video de ejemplo se muestra un ejemplo de uso del simulador de fluidos. Se utiliza el cubo inicial de la escena por defecto de Blender como contenedor de dominio. En
|