Posts

Showing posts with the label mpm

Material point method in Vulkan

During the lat weeks I implemented with a few other students at university a simulation for soft-body dynamics and really basic fluids using the material point method (in short MPM ). The goal was to use different sizes for individual particles which would decrease or increase their specific area of impact. It pretty much works like this: 👉 1. You have an amount of particles which you spread around to represent a specific volume (for example a sphere or a cube but it could be any mesh really). Then you give each particle a mass, velocity, position and volume. The particles will pass in their area of impact their information about mass and velocity into a grid data structure as weighted impulse and weighted mass depending on the distance between each grid cell and your particle. 👉 2. The next step is to adjust forces to the grid cells and collect data in the area of impact of each particle from cell back to the particle. Then you calculate from that the new velocity of the particl...