
Fractura celular
Compartir
Ahora que tengo un poco más de confianza en el uso general de los nodos geométricos, he decidido seguir un tutorial un poco más complejo. Actualmente estoy trabajando en un tutorial de Bradley Animation, que puedes encontrar aquí: Cómo crear un efecto de fractura de celda en Blender .
Resumen de la funcionalidad del árbol de nodos
El árbol de nodos sigue un proceso para generar un efecto de fractura de celda. El objeto inicial se corta repetidamente utilizando una malla de cubos, lo que da como resultado una apariencia fracturada. Luego, las piezas fracturadas se manipulan con transformaciones y aleatoriedad para crear un aspecto más natural y caótico.
Comencé utilizando el nodo Geometría para posicionar la geometría inicial en la escena. Este paso garantiza que el objeto comience en una ubicación para que se puedan aplicar el resto de las operaciones.
A continuación, utilicé un nodo de repetición para crear un efecto iterativo. Este nodo me permitió aplicar la operación de corte varias veces, lo que es esencial para lograr un efecto de fractura. Se utilizó una geometría de cubo como herramienta de corte y el nodo de repetición permitió realizar varias repeticiones del proceso, lo que generó una fractura más compleja.
Luego introduje la aleatoriedad en el proceso mediante el nodo Valor aleatorio . Este nodo estaba conectado a un nodo de comparación etiquetado como Igual , que me ayudó a decidir condicionalmente qué partes de la geometría se modificarían en cada iteración. Al aleatorizar estos valores, pude agregar más variedad a las piezas fracturadas.
Para ayudar a controlar las relaciones espaciales entre las piezas fracturadas, utilicé los nodos Cuadro delimitador y Distancia . El nodo Cuadro delimitador calculó los límites mínimos y máximos para cada pieza, mientras que el nodo Distancia ayudó a determinar el espaciado entre las piezas fracturadas, asegurándome de que no se superpusieran.
Para escalar las piezas individuales, utilicé un nodo Escalar dentro de una sección enmarcada del árbol de nodos. Este nodo ajustó el tamaño de cada pieza fracturada. También utilicé un nodo Multiplicar antes del nodo Combinar XYZ para ajustar los factores de escala. Al conectar la salida al nodo Combinar XYZ , pude escalar cada eje de forma independiente, lo que proporcionó más flexibilidad en el tamaño de cada pieza.
La rotación se aleatorizó utilizando un nodo de valor aleatorio con un nodo de Euler a rotación para traducir los valores de rotación. El valor aleatorio creó diferentes ángulos de rotación para cada corte.
Se utilizó el nodo booleano de malla para realizar operaciones booleanas entre la geometría inicial y el cubo de corte. Utilicé la operación Diferencia , que restó partes del objeto en función de la geometría del cubo, lo que fracturó efectivamente el objeto en piezas más pequeñas.
Una vez que se completaron todas las transformaciones y fracturas, utilicé un nodo Unir geometría para volver a combinar los valores separados por el nodo Separar geometría . Quería mostrar las piezas individuales separadas entre sí, por lo que agregué un nodo Vista despiezada . Este nodo me permitió separar las piezas visualmente, mostrando el efecto de la fractura de una manera más dramática.
Por último, utilicé el nodo Salida de grupo para pasar toda la configuración a la escena principal. El nodo Vista ampliada me lo proporcionó Bradley como plantilla y pienso deconstruirlo para entender mejor qué hace. La Vista ampliada dio el efecto de las piezas fracturadas que se separan, resaltando el resultado de todo el proceso del nodo.
Nodos utilizados y sus funciones
- Repetir: aplica la operación de corte varias veces, creando una fractura más compleja.
- Valor aleatorio: genera números aleatorios para introducir variabilidad en las piezas fracturadas.
- Igual (Nodo de comparación): se utiliza para crear modificaciones condicionales, garantizando que algunas piezas se modifiquen mientras que otras no.
- Cuadro delimitador: calcula los límites mínimos y máximos para cada pieza fracturada.
- Distancia: Determina el espaciado entre piezas para evitar superposiciones.
- Escala: controla el tamaño de cada pieza fracturada.
- Multiplicar: ajusta los factores de escala antes de combinarlos en un vector.
- Combinar XYZ: combina valores X, Y, Z separados en un solo vector para escalar o posicionar.
- Transformar geometría: aplica transformaciones como traslación, rotación y escala a cada fractura.
- Euler a rotación: convierte valores aleatorios en rotaciones de Euler para aplicar rotaciones a cortes de fractura.
- Malla Booleana: Realiza operaciones Booleanas (Diferencia) para crear las piezas fracturadas.
- Vista explosionada: separa visualmente las piezas fracturadas para mostrar el resultado de la fractura.