Vertex Animation – Blob Reactive System

Description
This project consists of a vertex animation system that simulates the reaction of a suspended fluid’s motion upon contact with a solid body, completely in real time using shaders in Unity. The focus is on manipulating the vertices in the shader to achieve the natural motion effect of a semi-liquid body.
Technical Goals
- Simulate the reaction of a fluid upon contact
- Make the system interactive
- Generate a ripple effect for movement
Tools and Tech
- Unity
- Blender
Overview
The Mesh
For this project, I used a high-polygon sphere created in Blender. The smoothness of the motion depends on the polygon density. The UV mapping is sampled over the entire coordinate system.

Shader Interaction System
The interaction is based on Sphere Mask and point-of-contact systems. There are two systems that allow for two points of contact simultaneously.

The Code
The logic is very simple: send the contact location to the material/shader parameter and increase the sphere mask size by the desired speed.

For tracking the contact location I used the following logic for looping between the two contact points.

Conclusion
The resulting shader allows you to simulate the motion response of a semi-liquid body when interacting with solid objects based on the point of contact and generating a vertex displacement from the impact coordinate.
Post-Mortem
This project allowed me to practice and better understand UV systems and the basic elements of shaders, as well as how to expose those shaders to interact with other objects, components, or systems.
In another iteration, I would like to integrate a system with unlimited or greater capacity for the number of interactions that are possible at once between the body and the interactable objects.