Bullet ricocheting

Started by
2 comments, last by Daggett 18 years ago
Hello all, I'm having a problem trying to figure out how to do proper bullet ricochets. I don't want anything fancy, just something that looks right. Right now I'm just mirroring the bullet ray around the surface normal. However, high velocity bullets don't do this in real life. A real life bullet hitting a metal plate will not bounce off at 45deg if it hits it a 45 deg, instead it will bounce off at a low angle, say < 10deg. But, if you shoot at a metal plate at a high angle it will bounce off at nearly the same angle. I can't figure out how to mathematically merge these two different results. Does anyone know how I could do this? Thanks
Advertisement
If Statment my friend
A simple solution is to reduce the velocity component parallel to the surface normal by some factor. Reality is not that simple but this should be close enough.

Rather than using
    V' = V - 2(N dot V)N 
use
    V' = V - (1+f)(N dot V)N 
where f is the "restitution factor", between 0 an 1.
John BoltonLocomotive Games (THQ)Current Project: Destroy All Humans (Wii). IN STORES NOW!
Yes, that works quite a bit better than my old system. Thanks! :)

This topic is closed to new replies.

Advertisement