mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-15 16:44:36 +00:00
ConvexFeature: Fix collision list object references
Turns out ConvexFeature::collide assumes the second round of testVertex calls will only add one entry to the collision list at a time and was erroneously only changing the last object and material reference.
This commit is contained in:
parent
e3df069570
commit
f394db4b36
1 changed files with 4 additions and 3 deletions
|
|
@ -111,13 +111,14 @@ bool ConvexFeature::collide(ConvexFeature& cf,CollisionList* cList, F32 tol)
|
||||||
U32 storeCount = cList->getCount();
|
U32 storeCount = cList->getCount();
|
||||||
testVertex(*vert,cList,true, tol);
|
testVertex(*vert,cList,true, tol);
|
||||||
|
|
||||||
// Fix up last reference. material and object are copied from this rather
|
// Fix up added references. material and object are copied from this rather
|
||||||
// than the object we're colliding against.
|
// than the object we're colliding against.
|
||||||
if (storeCount != cList->getCount())
|
while (storeCount < cList->getCount())
|
||||||
{
|
{
|
||||||
Collision &col = (*cList)[cList->getCount() - 1];
|
Collision &col = (*cList)[storeCount];
|
||||||
col.material = cf.material;
|
col.material = cf.material;
|
||||||
col.object = cf.mObject;
|
col.object = cf.mObject;
|
||||||
|
++storeCount;
|
||||||
}
|
}
|
||||||
vert++;
|
vert++;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue