Download presentation

Presentation is loading. Please wait.

1
**Advanced Character Physics**

Paper writtten by Thomas Jakobsen from IO Interactive Presentation by Semih Kekül

2
Glacier The methods and algorithms in this paper have all been integrated to this engine IO Interactive’s in-house game engine Used for Hitman: Codename 47 Goals: believability (stability) high speed of execution An iterative aproach: Adjustable error margin can be stopped at any time

3
**the right combination of several techniques**

A so-called Verlet integration scheme. Handling collisions and penetrations by projection. A simple constraint solver using relaxation. A nice square root approximation that gives a solid speed-up. Modeling rigid bodies as particles with constraints. An optimized collision engine with the ability to calculate penetration depths.

4
Verlet integration(1) f=ma

5
Verlet integration(2) It is quite stable since the velocity is implicitly given and consequently it is harder for velocity and position to come out of sync. It works due to the fact that 2x – x* = x + (x- x*) x- x* is an approximation of the current velocity(the distance traveled last time step).

7
**Collision and contact handling by projection**

Offending points are simply projected out of the obstacle.

8
**Solving several concurrent constraints by relaxation**

Infinitely stiff springs! How do we do that? |x2 – x1| = 100

9
**Solving several concurrent constraints by relaxation(2)**

delta = x2 – x1; deltalength = sqrt ( delta*delta); // dot product diff = (deltalength - restlenght) / deltalength ; x1 += delta * 0.5 * diff; X2 -= delta * 0.5 * diff; How do we combine this constraint with the previous cube constraint? Relaxation

10
Relaxation

11
**Cloth Simulation delta = x2 – x1;**

deltalength = sqrt ( delta*delta); // dot product diff = (deltalength - restlenght) / deltalength ; x1 += delta * 0.5 * diff; X2 -= delta * 0.5 * diff; delta = x2-x1; deltalength = sqrt(delta*delta); diff = (deltalength-restlength)/deltalength; x1 += delta*0.5*diff; x2 -= delta*0.5*diff; Get rid of sqrt

12
**Rigid bodies A tetrahedron: 4 particles at vertices,**

6 edges which are stick constraints Put it in a cube, Verlet handles it.

13
Rigid bodies(2) What if the world is concave?

14
**Rigid bodies(3) A simpler approach with sticks**

Assume we can detect collisions and we know the penetration depth and penetration points: A linear combination of x1 and x2 is p = c1 * x1 + c2 * x2 ; c1 + c2 = 1 We want p’ = q

15
Rigid bodies(4)

16
Rigid bodies(5) p’ ∆ = q ∆ (they are moving in the same direction)

17
Articulated Bodies (x2-x0) ○ (x1-x0) < α ; for reality of human body

18
Articulated Bodies(2) No rotation around lenght axis of limbs.

Similar presentations

Presentation is loading. Please wait....

OK

Physics of Hair Maxim Bovykin.

Physics of Hair Maxim Bovykin.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

Ppt on product marketing mix Ppt on abo blood grouping experiment Ppt on entrepreneurship and economic development Ppt on networking related topics for peace Ppt on social networking free download Ppt on different wild animals Ppt on ufo and aliens photos Download ppt on pulse code modulation tutorial Ppt on bond length and strength Appt only