Purely elastic models don't loose energy when deformed
Plasiticity
Ductile material: can allow large amout of plastic deformation without breaking (plastic)
Brittle - Opposite (glass)
Viscosity
Resistance to flow (usually for fluid, ex:honey)
In reality
Elasto-plastic materials
Allow elastic behavior for small deformation, and plastic at larger one
Visco-elastic materials
Elastic properties with delay
Rigid spheres
System modeling
Particles modeling the center of hard spheres
Spheres can collide with surrounding obstacles
Spheres can collide with each others
System: particles with position , speed , mass , modeling a sphere of radius
initial conditions:
Forces:
Collision with a plane
Plane : parameterized using a point and its normal
Sphere above plane:
Sphere in collision:
for(int i =0; i < N;++i){float detection =dot(p[i]-a, n);if(detection <= r[i]){// ... collision response}}
Collision response with plane
What should we do when a collision is detected ?
On peut changer la vitesse
On decompose la vitesse selon 2 composantes: la tangente et la normale
Collision response = Update speed
Result
Applying collision response on speed only
Les boules tombent en-dessous du plan
Quand notre sphere rebondit, il est possible qu'une partie passe au travers du plan, donc on considere en collision, donc on inverse sa vitesse, donc en collision, etc
Comment on contre ca ?
Si ma sphere est dans le sol, on s'arrange pour qu'elle ne soit pas dans le sol On la "repousse" pour qu'elle soit en contact avec la surface
Collision response with a plane: position
Three possibilities:
Correct position in projecting on the constraint
Pros: simple to implement
Cons: Physically incorrect position
Approximate the correct position
Go backward in time to find exact instant of collision
Continuouse collision detectino
Pros: physically correct
Cons: Computationally heavy
Result
Ca marche !
Collision between speheres
Given 1 spheres
Collision when
What will happen with speeds ?
Notion of impulse
An impulse is the integrted force over time
Result in a sudden change of speed (momentum) in a discrete case
For a particle with a constant mass
2 spheres in collision
J'ecris pas ca vous etes fous
Summary
Detect collision
if collision (relative speed)
Elastic collision (bouncing)
If static contact (relative speed )
Friction
Avoids jittering
Correct position (project on contact surface)
: collision depth
For small impacts, can use position based dynamics
Note on collision stack
Optimiser ne pas avoir a simuler les spheres sur le sol et immobiles
Faire des graphes des solides et les traiter comme des solides rigides
Modeling elastic shapes with particles
Spring mass systems
Particles: samples on shape
Springs: link closed-by particles in the reference shape