UCT CS Research Document Archive

Towards realistic and interactive sand simulation: a gpu-based framework

Longmore, Juan-Pierre, Patrick Marais and Michelle Kuttel (2013) Towards realistic and interactive sand simulation: a gpu-based framework. Powder Technology 235:983-1000.

Full text available as:

Abstract

We describe a highly efficient method for simulation of particulate materials at the granular level on graphics processing unit (GPU) hardware. Our GPU implementation of a discrete element method (DEM) allows for both rapid visualisation and physically accurate simulation of particulate materials, with a specific focus on sand. Our model represents each granule as a tetrahedral lattice of four particles, thereby implicitly modelling static friction through interlocking of neighbouring granules. Simulations performed with our implementation produce demonstrably realistic granular behaviour with respect to both force characteristics and reactive behaviour of typical sand piles. The implementation is also highly efficient, achieving 256K tetrahedral granules at 120 milliseconds per frame of animation, and requires only a personal computer equipped with any recent commodity graphics card to accelerate all simulation physics.

Further, our model admits subtle real-time lighting effects, such as particle self-shadowing and shadowing among granules and the environment, important for reproduction of the distinctive appearance of granular materials. Our model also supports interaction with a general environment by first point-sampling objects and then treating these as large ``granules''. In this way, our simulation naturally handles arbitrary rigid body interaction, thus making it applicable to broader real-time simulation applications.

EPrint Type:Journal (Paginated)
Subjects:I Computing Methodologies: I.3 COMPUTER GRAPHICS
I Computing Methodologies: I.6 SIMULATION AND MODELING
ID Code:907
Deposited By:Marais, Patrick
Deposited On:28 October 2013
Alternative Locations:http://dx.doi.org/10.1016/j.powtec.2012.10.056