PIZiadas gráficas

PIZiadas gráficas

Mi mundo es la imagen.

Animación 3D, Partículas : Crear humo [Blogs experimentales] [Blender]

smoke_renderUno de los aspectos en los que que ha mejorado notablemente la versión 2.5 de Blender ha sido el sistema de partículas y los cálculos físicos de su comportamiento.

En particular la introducción de funciones para la obtención de efectos como el humo han supuesto un interesante avance en esta revisión, facilitando la obtención de resultados visualmente muy atractivos.

Para analizar el proceso distinguiremos dos partes, la creación del sistema de partículas y la asignación de materiales o propiedades visuales.

Sistema de partículas para hacer efectos de humo

Para realizar un sencillo ejemplo que cubra los pasos básicos necesarios para crear una pequeña secuencia en la que se vea humo, debemos partir de unos sencillos elementos en la escena.

escenaIncorporaremos dos superfícies, por ejemplo dos cubos,

El primer cubo o superficie actuará como dominio (espacio en el que se producirá el efecto)

El segundo cubo, más pequeño y contenido en el interior del anterior, servirá como generador de las partículas de humo.

Para asignarles estas funciones deberemos seleccionarlos por separado y entrar en el conjunto de menús que se encuentran en el apartado “Physics”

menu_physics

Al seleccionar el icono de “Physics” se desplegará un conjunto de botones que permitirán definir el tipo de efecto que queremos asignar a la superficie que tenemos seleccionada. En este caso deberemos indicar “Smoke

physics

De nuevo el conjunto de menús y ventanas cambiará para contextualizar nuestra acción. Si hemos seleccionado la superficie de mayor tamaño deberemos indicar que es el dominio pulsando sobre el botón “Domain“, mientras que si queremos que sea el generador de partículas de humo la selección será “Flow

smoke

Al seleccionar “Domain”, accederemos a los diferentes parámetros disponibles para caracterizarlo, desde la resolución del mismo que afectará a la calidad final del resultado (y el tiempo de cálculo) a algunos aspectos como la temperatura del medio (afectará a la velocidad del humo) la densidad (para crear turbulencias) etc.

También podremos determinar si el humo tiene colisiones con las fronteras del dominio, así como si se disuelve o difunde desapareciendo tras un cierto intervalo de tiempo.

Una vez que conozcamos la metodología básica para crear este efecto podremos probar los diferentes parámetros para conocer el alcance que tienen.

Smoke_domain

De forma similar al dominio, al definir que una de las superficies es el emisor, accederemos a nuevos parámetros para ajustar sus propiedades, como la velocidad inicial del humo (en dirección normal a la superficie), su densidad y temperatura. Podemos dejar estos valores por defecto inicialmente hasta conseguir las primeras animaciones; posteriormente los podremos modificar para observar su influencia.

smoke_flow

Una vez definidos el emisor y el dominio, podremos generar una primera visualización de la animación. Primero guardaremos el proyecto; es necesario que el fichero esté guardado en el equipo para que se generen los estadios intermedios de la animación.

Usaremos una ventana de “Timeline” y pulsaremos el botón de “Play” para ver el resultado.

timeline

Render del humo

El último paso para la generación del humo consiste en definir las propiedades visuales: Material y texturas La asignación de un nuevo material la realizaremos seleccionando el objeto y pulsando sobre el icono de “Material” (la esfera)

Material

Definiremos un nuevo material para el dominio.

Una novedad a partir de la versión 2.5 es la incorporación de un nuevo tipo de material de base física, volumen, destinado para los medios participativos (los que interaccionan con la luz), como el humo, las nubes, la niebla y otros efectos volumétricos.

Todas las texturas de procedimiento se admiten como fuentes de datos, apareciendo dos nuevas texturas para la representación de voxels (como la nuestra el simulador de humo) y las nubes de puntos.

El vóxel (del inglés volumetric pixel) es la unidad cúbica que compone un objeto tridimensional. Constituye la unidad mínima procesable de una matriz tridimensional y es, por tanto, el equivalente del píxel en un objeto 3D. (W)

Seleccionaremos “Volume” para el tipo de material del elemento contenedor del humo, es decir, para el dominio. Pondremos a cero el valor de densidad (“Density”) con objeto de dejar un volumen totalmente limpio o transparente, ya que no es el volumen del dominio lo que queremos renderizar, es su contenido (el humo)

material_volumen

añadiremos una textura al dominio, accediendo al menú de texturas con el objeto previamente seleccionado. Este menú se encuentra pulsando el icono con el tablero de ajedrez (cuadrados blancos y negros)

texture

La textura a añadir debe ser “Voxel Data”, ya que realizaremos el render con el contenido del dominio voxel a voxel buscando aquellos que contienen partículas de humo.

Texture_voxelData

El parámetro que debemos asignar es el objeto o dominio de la textura, que coincide con el dominio en el que hemos incorporado el efecto de humo.

voxel_data

Por último, deberemos activar la influencia de la densidad del contenido de los voxels, que afectará a la densidad del render.

influence_density

Quedan otros muchos parámetros por ajustar para conseguir efectos más o menos realistas: El color del humo, los efectos de Scattering o filtrado de la luz al atravesarlo, los coeficientes de emisión de luz etc.

En próximos artículos profundizaremos en estos parámetros visuales e introduciremos efectos físicos como el viento, turbulencias etc que nos permitirán modificar sustancialmente los resultados.

En la siguiente imagen tenemos un gif animado de humo, realizado con esta técnica. El resultado es físicamente atractivo

humo

GIF animado de humo

O esta pequeña animación con velocidad inicial

Tutorial Blender