Jump to content
UnitySpain

Aceptamos donaciones vía Paypal.

UnitySpain.com es un servicio gratuito, pero mantener la Comunidad conlleva una serie de gastos.

Fondo Anual Unityspain: Donados 58,34€ de 150,00€

  • Servidor: Dominio.com y Hosting Web
  • Mantenimiento de los Foros
  • Contenido y Servicios Extras
  • Mantenimiento para Redes Sociales

Recommended Posts

Buen día

Estoy desarrollando un entorno virtual con la planta mostrada en la imagen, soy inexperto en la herramienta y necesito animar cada uno de los tanques del nivel inferior, para que parezca que se están llenando pero no sé como trabajar con fluidos ni hacer para que el fluido se muestre solo en las áreas coloreadas del tanque. Si saben de algún buen tutorial o alguna forma sencilla de hacer se los agradezco, realmente necesito hacer eso con mucha urgencia. 

 

Gracias

Inrerfaz Visualizacion.PNG

Share this post


Link to post
Share on other sites

si quieres salir rapido de eso mejor haces un cilindro que vas escalando en el eje Y… no sera muy realista pero si te vas por simulacion vas a tardar un buen tiempo configurando las fisicas y puede consumirte bastantes recursos, para algo que al final talvez ni te parezca tan real

un punto intermedio es modelar segmentos del liquido pasando por las tuberias y llenando los tanques, de pronto algun modelador lo hace facil y creible

Share this post


Link to post
Share on other sites

Estoy Braltor, lo más eficaz con diferencia es trabajar con geometría, si necesitas esa sensación de movimiento puedes animar un mapa de normales o un displacement, como se hace con el agua ;D

 

Share this post


Link to post
Share on other sites
hace 2 horas, Shovah said:

Estoy Braltor, lo más eficaz con diferencia es trabajar con geometría, si necesitas esa sensación de movimiento puedes animar un mapa de normales o un displacement, como se hace con el agua ;D

 

eso funcionaria bien si ves la escena desde el mismo angulo xq se anima sobre la superficie de la tuberia, si necesitas algo volumetrico geometria como dice @Shovah

Share this post


Link to post
Share on other sites

lo mas facil es hacer unos objetos que simulen ser el liquido y añadelirles este script

hace que la escala Y de un objeto crezca o disminuya desde un valor hasta otro(los que pongas), a la velocidad que pongas

permite llenar y vaciar, y hacer que la "animacion" sea un loop

using UnityEngine;
using System.Collections;

public class ScallingFronTo : MonoBehaviour {
   public float startValue = 0.5f;
   public float endValue = 2f;
   public float speed = 1f; //velocidad de llenado/vaciado(unidades al segundo)
   public bool makeLoop = false;
   public bool vaciado = false;

   private float valueY;

   void Start() {
      valueY = startValue;
   }

   void Update() {
      if (vaciado) {
         valueY += speed * Time.deltaTime;
      } else {
         valueY += speed * Time.deltaTime;
      }
      
      if (valueY > endValue) {
         if (makeLoop) {
            valueY = startValue;
         } else {
            valueY = endValue;
         }
      }

      if (valueY < startValue) {
         if (makeLoop) {
            valueY = endValue;
         } else {
            valueY = startValue;
         }
      }

      transform.localScale = new Vector3(transform.localScale.x, valueY, transform.localScale.z);
   }
}

 

Share this post


Link to post
Share on other sites

×
×
  • Create New...