Fracture physics

Started by
2 comments, last by hobogoblin 10 years, 1 month ago

Hi,

I've been working on a 3D rigid body engine for the past while as a pet project, and so far I'm happy with how it runs. I've got a world that responds correctly to collisions between convex rigid bodies, using GJK w/EPA and the sequential impulses method.

The next step I would like to take is to implement some fracture simulations into the engine, but I've hit a bit of a brick wall. Research and reading first came up with http://graphics.berkeley.edu/papers/Parker-RTD-2009-08/Parker-RTD-2009-08.pdf which is a paper on how the DMM (Digital Molecular Matter) engine works, which is far more advanced than I'm aiming for currently.

I went down the rabbit hole, and ended up back in 1999 at this paper: http://graphics.berkeley.edu/papers/Obrien-GMA-1999-08/(which it seems is the basis for the DMM engine anyway, with some modifications).

I'm trying to implement this method, however am struggling with it. Has anyone here any experience with this topic, or does anyone know of an implementation of this (or a similar paper) that I could use to get started?

Advertisement

One thing that often comes as a surprise to when trying to implement an algorithm from a paper, is reaching out the author and try to get some information. Depend on the age of the article, the author may or may not be at the same instituition, but more often that not, they are usually more that willing to answer questions in regards to the paper. So I would suggest reaching out to the author and see what happens.

Alot of games just fake it and pre-fracture the objects using a 3D program physics plugin and then during gameplay just put those fractured elements to sleep until they are awaken by some impact. Some don't even bother with the physical simulation runtime, they just record the collapsing nature of the fractured elements and play it back like an animation. This is usually done for things which fracture far away from the player.

If your looking for realtime in-engine facturing, that's going to be more difficult to find / do. Best bet is to look for physics papers as this is more a physical problem than graphical one. Most likely, they do some surface analysis to calculate the force propagation then generate fracture planes on the surface which split into the object, where these splits meet they form fragment shards which break off etc..

Good Luck!

. So I would suggest reaching out to the author and see what happens.


Would you believe, in 5 years of academia, I've never actually thought of asking an author for advice on it! (Seriously!) I'll give it a try, however the author probably has a vested interest in not having a competing engine existing, as he is actually involved in the DMM engine (the first paper linked) but I'll ask nonetheless

Alot of games just fake it and pre-fracture the objects using a 3D program physics plugin and then during gameplay just put those fractured elements to sleep until they are awaken by some impact. Some don't even bother with the physical simulation runtime, they just record the collapsing nature of the fractured elements and play it back like an animation. This is usually done for things which fracture far away from the player.

If your looking for realtime in-engine facturing, that's going to be more difficult to find / do. Best bet is to look for physics papers as this is more a physical problem than graphical one. Most likely, they do some surface analysis to calculate the force propagation then generate fracture planes on the surface which split into the object, where these splits meet they form fragment shards which break off etc..

Good Luck!


Hey, thanks for te input. I'm looking for in engine fractures to be honest, and it's less about the end result , and more about the process of actually doing it myself however I'm a bit stuck.

I've actually linked to two papers which cover I in real time, the problem with looking at physics papers is they tend to cover FEA methods, which are offline computations, so I'm really looking at siggraph and theikes for papers. I can find a multitude of papers on the topic, but no examples of it runnin other than DMM.

This topic is closed to new replies.

Advertisement