En este tutorial, veremos cómo llenar un contenedor con objetos usando la simulación Rigid Body de Blender.



Transcripción del video

¡Hola a todos!

En este tutorial, veremos cómo llenar un contenedor con objetos usando la simulación Rigid Body de Blender.

Estoy grabando este tutorial con la versión 3.3 de Blender y, para mostrarles un ejemplo práctico, usaré uno de mis recursos llamado "Pharma cápsulas pastillas y botella", pero no es necesario tenerlo: lo importante es entender la técnica, que puede ser útil para colocar muchos objetos de manera aleatoria pero creíble, no solo dentro de contenedores sino también en superficies.

Los principios son los mismos y puedes aplicarlos a pastillas, caramelos, monedas de oro o cualquier otra cosa.

El modelo 3D que estoy usando en realidad está compuesto por varios objetos que están relacionados entre sí.

No necesitamos la tapa, así que podemos ocultarla o quitarla, como estoy haciendo.

Tenemos tres objetos: el contenedor, la etiqueta y un objeto que representa todas las pastillas, que se han fusionado en un solo objeto. Podemos examinarlos más de cerca ocultando temporalmente el contenedor y la etiqueta.

Para crear la simulación, necesitamos aislar una pastilla y darle un componente físico de Rigid Body, luego duplicar el prototipo de pastilla e iniciar la simulación de la caída.

Con el objeto Pills seleccionado, cambio al modo Edit, luego selecciono una pastilla colocando el cursor del mouse sobre un vértice de una pastilla y presionando L (es decir, "Linked"), y selecciono todos los elementos conectados al que está cerca del cursor del mouse.

Luego, invierto la selección con CTRL+I y elimino todas las otras pastillas con X y Vertices.

De vuelta al modo Object, noto que el origen del objeto "Pills" no está posicionado en el centro de la única pastilla que sobrevive. Lo arreglo de inmediato con un clic derecho y "Set Origin" - "Origin to Geometry".

También me aseguro de que las transformaciones de escala estén aplicadas.

Es fácil de verificar porque los valores de Scale XYZ del objeto en el panel Transform están todos configurados en 1.

Si no lo estuvieran, tendríamos que aplicarlos con CTRL+A y "Apply Scale".

Ahora vuelvo a hacer visible el contenedor porque quiero verificar que la pastilla esté posicionada de tal manera que pueda pasar por la abertura del contenedor. Intentaré soltar las pastillas dentro del contenedor desde arriba.

De hecho, en esta posición, la pastilla no puede caer dentro del contenedor, así que la muevo manualmente para que, en la vista superior, esté dentro de la abertura.

La línea punteada que conecta la pastilla con el contenedor indica que la pastilla es hija del contenedor.

Esto podría ser un problema con las copias de la pastilla y la simulación física, así que desvinculo los dos objetos manteniendo la posición y otras características de la pastilla.

Para hacer esto, selecciono la pastilla, presiono ALT+P y elijo "Clear and keep transform" en el menú "Clear Parent".

La pastilla es ahora un objeto separado.

Antes de crear las copias, necesito darle a la istilla un componente de simulación Rigid Body para que ya esté listo en las copias que haré más adelante.

Para agregar el Rigid Body, simplemente hago clic en "Rigid Body" en el panel Physics Properties.

El Rigid Body recién creado será del tipo Active por defecto, lo cual está bien porque el objeto necesita reaccionar a la gravedad.

Para observar la simulación física en este punto, configuramos el fotograma de animación a 1 en la Timeline y presionamos Play.

La pastilla cae y pasa a través del contenedor porque aún no forma parte de la simulación física de la escena.

Para que el contenedor atrape la pastilla, necesitamos darle un componente Rigid Body como lo hicimos para la pastilla, pero esta vez necesitamos cambiar inmediatamente su tipo a Passive porque no debe caer al vacío sino interactuar solamente con los otros objetos.

Para iniciar la simulación física con los cambios que acabamos de hacer, debemos volver al primer fotograma de la animación en la línea de tiempo y hacer clic en el botón Play nuevamente.

Inmediatamente notamos que la pastilla cae e interactúa, en cierto sentido, con el contenedor, pero de una manera que no esperábamos: se atasca en la abertura, suspendida en el aire, como si la abertura estuviera cerrada.

Esto se debe a que la forma utilizada por Blender para calcular las colisiones del contenedor en el panel Rigid Body es la predeterminada, que es "Convex Hull", que es una caja cerrada utilizada para simplificar los cálculos del motor de simulación física.

Para resolver este problema, cambio el valor del parámetro Shape de "Convex Hull" a "Mesh". Blender ahora aproximará la forma de las colisiones a la del contenedor.

Como puedes imaginar, este modo consume bastantes recursos y debe usarse con moderación.

En este caso, la escena no es muy compleja, así que está bien, pero en otras situaciones, es posible que necesites evaluar si utilizar las otras opciones disponibles en el menú Shape del Rigid Body.

En cuanto a la pastilla, puedes elegir, por ejemplo, la forma Capsule, que se aproxima muy bien... en cualquier caso, aquí dejo la opción predeterminada, que es Convex Hull.

Volvamos al primer fotograma de la Timeline, hagamos clic en Play y observemos el resultado: esta vez la pastilla cae dentro del contenedor y rebota un par de veces en el fondo antes de detenerse.

Ten en cuenta que la simulación comienza a ralentizarse cuando la pastilla toca el fondo del contenedor. Esto se debe a que Blender está calculando las colisiones.

Cuando agreguemos las otras pastillas, la simulación avanzará mucho más lentamente porque, obviamente, habrá más cálculos que realizar.

Volvamos al primer fotograma de la simulación.

Queremos obtener una serie de pastillas apiladas unas encima de otras para soltarlas dentro del contenedor, dejando que Blender se encargue de llevar todas las pastillas a una posición final después de calcular las colisiones con las paredes del contenedor y entre las pastillas.

Conseguir las diversas copias de la pastilla es en realidad bastante simple: solo necesitamos agregar un modificador Array a la pastilla, estableciendo el desplazamiento relativo en 0 para los ejes X e Y y, en cambio, estableciéndolo en 2 para el eje Z relativo.

No tengo idea de cuántas pastillas pueden caber dentro del contenedor (no las conté al principio del video), así que probaré con 40 pastillas, ingresando este número en el parámetro Count del modificador Array.

No podemos aplicar la simulación ahora porque este sigue siendo un modificador que aún no se ha aplicado, por lo que todas las pastillas siguen siendo instancias, no objetos separados.

Entonces aplico el modificador haciendo clic en Apply en su panel.

Sin embargo, las pastillas aún forman parte de un solo objeto: son geometrías que necesitamos hacer independientes.

Para hacer esto, simplemente necesitamos entrar en el modo Edit, seleccionar todas las geometrías, presionar P y elegir "By Loose Parts" en el menú Separate que aparecerá en la pantalla.

De esta manera, como sugiere la información sobre herramientas, obtendremos un objeto para cada "isla", es decir, para cada geometría separada.

Volvamos al modo Object y notemos que todas las nuevas pastillas son, de hecho, objetos separados, como también se puede ver en el Outliner.

Estos objetos tienen todos el componente Rigid Body configurado como lo hicimos para la primera pastilla, que sirvió como "prototipo" para todas las demás...

...sin embargo, también podemos ver que el Origin de cada copia sigue estando donde estaba el Origin de la primera pastilla.

Sin embargo, este problema se puede resolver fácilmente: seleccionamos una de las copias (para hacerla el objeto activo), luego seleccionamos todas las demás copias (lo hago con la tecla B y el mouse), hacemos clic derecho en la selección y elegimos "Set Origin - Origin to Geometry" del menú "Object Context" que aparece en la pantalla.

Ahora todas las pastillas son objetos separados, con los Origins establecidos correctamente, y todos tienen el componente Rigid Body configurado correctamente.

Entonces podemos ir al primer fotograma de la Timeline e iniciar la simulación haciendo clic en el botón Play.

En este caso, la simulación tomará varios minutos.

¡De hecho, quizás 40 pastillas eran demasiado pocas para este contenedor!

De todos modos, podemos echar un vistazo a la disposición de las pastillas interrumpiendo la reproducción de la animación en varios puntos.

Vayamos al último fotograma de la animación y ocultemos temporalmente el contenedor y la etiqueta: las pastillas están en una posición de reposo plausible (sin espacios vacíos ni intersecciones), por lo que los fotogramas de la animación son suficientes para lograr un buen resultado.

La animación es interesante, pero el tutorial aún no está completo: si quisiéramos exportar el resultado de esta simulación física, con las pastillas dispuestas dentro del contenedor como están en el último fotograma de la animación, necesitaríamos de alguna manera hacer permanente la simulación física.

¡No se debe realizar la operación de eliminar el componente Rigid Body de la pestaña Physics de las pastillas, ni fusionar las pastillas entre sí o con el contenedor! Estas operaciones nos harían perder la simulación física y tendríamos que empezar de nuevo.

En cambio, debemos posicionarnos en el fotograma que queremos hacer final (por ejemplo, el último), luego seleccionar una pastilla (así tenemos al menos un objeto activo en la selección) y luego seleccionar todas las pastillas. Para hacer esta selección, podemos usar la tecla B y el mouse.

Con todas las pastillas seleccionadas (una de las cuales está activa), debemos buscar "Apply Transformation" en el cuadro de búsqueda de Blender (que puedo invocar con la barra espaciadora en mi caso) y elegir la opción en la sección Rigid Body, ya que queremos aplicar las transformaciones de Rigid Body.

Aún no hemos terminado: necesitamos abrir el cuadro de búsqueda nuevamente y comenzar a escribir "Remove Rigid Body", ya que ahora queremos eliminar el componente Rigid Body de todas las pastillas seleccionadas.

Debemos seleccionar la operación Object - Rigid Body - Remove.

Ahora la simulación es permanente: moviéndonos entre los diferentes fotogramas de la línea de tiempo, podemos ver que las pastillas ya no se mueven y ya no tienen el componente físico de Rigid Body.

En este punto, este objeto se puede exportar para ser utilizado en otros escenarios.

Las pastillas son mallas individuales, cada una con el Origin en el centro de su geometría, por lo que depende de ti decidir si dejarlas como están o agruparlas, emparentarlas o incluso fusionarlas; elige según tus necesidades.

¡Eso es todo para este tutorial! ¡Hasta pronto!

🇺🇸 Sitemap - 🇮🇹 Sitemap - 🇪🇸 Mapa del sitio - 🇧🇷 Mapa do site - 🇫🇷 Plan du site - 🇩🇪 Sitemap - 🇷🇺 Карта сайта - 🇨🇳 网站地图 - 🇯🇵 サイトマップ - 🇰🇷 사이트맵


Este sitio web tiene como único propósito mostrar algunos de mis trabajos, sin ninguna intención promocional. Ten en cuenta que actualmente no estoy buscando - ni responderé a - solicitudes de trabajos personalizados, consultorías u otro tipo de colaboraciones profesionales.


POLÍTICA EXTENDIDA DE PRIVACIDAD Y UTILIZACIÓN DE COOKIES