Skip to content
/ MPM Public

Simulating on GPU using Material Point Method and rendering.

Notifications You must be signed in to change notification settings

WindQAQ/MPM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MPM Simulation & Voxels Rendering

gpgpu free fall

This is the final project for the course, General-Purpose GPU Programming @ NTU CSIE.

We model and simulate fluid-like materials, such as snow and sand, using material point method. MPM is implemented in C++ + CUDA on GPU. And OpenGL is used for real-time result viewing. Besides, for high quality rendering, we use NVIDIA GVDB + OptiX Ray Tracing Engine.

Overview

Material point method overview

The material point method (MPM) is a numerical technique used to simulate the behavior of solids, liquids, gases, and any other continuum material. In the MPM, a continuum body is described by a number of small Lagrangian elements referred to as 'material points'. These material points are surrounded by a background mesh/grid that is used only to calculate gradient terms such as the deformation gradient. For more information, please go to Material point method - Wikipedia

Implementations

For more details, please go to our Project Page

Screenshots

Letters falling scene 1

gpgpu free fall crashed on ground

Letters falling scene 2

gpgpu free fall crashed completely

The small snow ball penetrated the bigger one

small snow ball penetrated the bigger one

The small snow ball crashed the bigger one

small snow ball crashed the bigger one

References

Papers
Other Implementations
Tools

Contact

Issues and pull requests are welcomed! Feel free to contact project owner Tzu-Wei Sung, or contributors Yist Lin and Rikiu Chen.