FusionWater es un interactor de fluido que controla la física y flotabilidad del agua en Unity. Se trata de un nuevo plugin para agregar física al agua de una forma más sencilla que la actual en Unity.

Si te cuesta añadir características físicas al agua en tus proyectos de Unity, este complemento te facilita las cosas para cumplir esas expectativas.

FusionWater trabaja de forma sencilla, está basado en el propio motor de Unity, por lo que es totalmente compatible en cualquier situación del proyecto.

Para implementarlo solo tienes que descargarlo y arrastrarlo a tu proyecto. Además está equipado con sombreadores y materiales proporcionados tanto para URP como para RP estándar.

Guía de configuración para FusionWater

Agrega el plano a tu agua o cualquier fluido, asegúrate de tener un colisionador para la configuración del volumen, tienes que agregar uno a cada objeto que quieras tener afectado.

La orden "BaseFluidInteractor" define la configuración básica que heredan todos los interactores.

Volumen personalizado: se utiliza para establecer un volumen personalizado. Cero significa que el volumen se calculará utilizando los colisionadores.
Factor de amortiguación: es la amortiguación aplicada al objeto.
Simular turbulencia del agua: agrega fuerzas de perturbación aleatorias generadas por el ruido perlin.
Fuerza de turbulencia: la fuerza de las fuerzas aplicadas
Fuerza de flotación: usa esto para cambiar la fuerza de flotación sin cambiar la masa.

El interactor de fluido básico

La orden "BasicFluidInteractor.cs" es el interactor más simple y fácil. Calcula todo desde el centro de los objetos, esto puede causar comportamientos extraños con objetos más alargados, como un tablón de madera, por ejemplo. Esta herramienta es ideal para objetos más pequeños, accesorios de background, cuboides y esferas. Usando la turbulencia simulada, puedes agregar un ligero movimiento, para que tus objetos floten, giren y se muevan un poco y no se queden estáticos en ningún momento.



El interactor fluido complejo

La orden "ComplexFluidInteractor.cs" es un interactor más complejo para obtener un resultado más realista posible, especialmente con objetos más grandes y complejos.

Este es ideal para barcos o similares, escombros grandes o tablones de madera largos. En lugar de calcular las fuerzas flotantes para el centro de un objeto, el "ComplexFluidInteractor" lo calcula sobre múltiples puntos que se pueden colocar en el objeto.

Esos flotadores calculan sus fuerzas de flotación en función de su propia inmersión y luego la aplican sobre el cuerpo rígido de los objetos principales en la posición siguiente.

El interactor fluido controla los flotadores

Esto permite colocar flotadores en los bordes de un objeto a lo largo de la superficie, como en el casco de un barco. Esto controla mejor su volumen sumergido y flotabilidad.

En el Editor de Unity, los flotadores se pueden colocar automáticamente en las esquinas de la caja delimitadora de los colisionadores o colocarse manualmente.

Un flotador no es más que un objeto vacío que se agrega a la lista ComplexFluidInteractors. Los flotadores se dibujan como esferas en la vista de escena, verdes si están en el aire, rojos si están sumergidos.

Tienes más información sobre FusionWater en la web de GitHub, además puedes descargar este complemento desde el mismo enlace.