Skip to main content
GameDev.net gamedev.net
🔒 Locked

Sphere collision response problem

Started by vo1d Aug 1, 2005 at 1:17 AM 0 replies 650+ views
Original Post
vo1d
vo1d
Hi, for sphere collision response i use this code: vec x_axis = p2->pos - p1->pos; x_axis.norm(); vec U1x = x_axis * (x_axis * p1->vel); vec U1y = p1->vel - U1x; vec U2x = x_axis * (x_axis * p2->vel); vec U2y = p2->vel - U2x; vec e1 = U1x * p1->mass; vec e2 = U2x * p2->mass; vec e3 = (U1x - U2x) * p2->mass; vec e4 = (U2x - U1x) * p1->mass; vec e12 = e1 + e2; float odm = 1.0f / (p1->mass + p2->mass); vec V1 = U1y + (e12 - e3) * odm; vec V2 = U2y + (e12 - e4) * odm; p1->vel = V1; p2->vel = V2; it works good, but there is one problem: sometimes when velocity is small first sphere connects to second 1) how to fix this problem? 2) maybe there are faster method to do it?

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.