Soy nuevo en el desarrollo de juegos / gráficos y estoy jugando con partículas (en 2D). Quiero acercar partículas entre sí como una gota, como líquido / agua. No quiero dibujar grandes círculos superpuestos ya que la burbuja no será suave (y demasiado grande). Realmente no sé física, pero supongo que lo que quiero es algo similar a la tensión superficial.
No he podido encontrar nada en stackexchange o en Google (¿tal vez no conozco las palabras clave correctas?). Hasta ahora he encontrado dos posibles soluciones, pero no puedo encontrar ninguna información concreta sobre algoritmos.
Una de ellas es calcular el casco cóncavo de partículas que considero una gota. Puedo calcular el blob creando una clase de equivalencia (en la relación "cerca uno del otro"). Por extraño que parezca, no he podido encontrar ningún algoritmo que explique cómo calcular el casco cóncavo. Muchas publicaciones (y entre stackexchange) enlazan a bibliotecas o productos comerciales que hacen esto (necesito bibliotecas para trabajar en C #), pero nunca ningún algoritmo. Además, esta solución podría tener un problema con un círculo de partículas, que no detectaría el espacio vacío en el medio.
Mientras investigaba el casco cóncavo me topé con algo llamado formas alfa. Lo que parece ser exactamente lo que quiero hacer, sin embargo, al igual que con el casco cóncavo, no he encontrado ninguna fuente que explique cómo funcionan realmente. He encontrado algunos materiales de presentación, pero no lo suficiente como para continuar. Es como un gran secreto que todos conocen excepto yo: - /
Después de calcular el casco cóncavo o la forma alfa, quiero que sea una curva Bézier para que sea suave y agradable.
Aunque considero que mi enfoque es demasiado complejo, ¿tal vez estoy tratando de resolverlo de la manera incorrecta? Si puede sugerir alguna otra solución a mi problema o explicar las piezas que me faltan, estaría muy feliz y agradecido :-)
Gracias.