fix/workaround for gcc internal compiler error
See also http://www.bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=9636&hilit=compiler+error+gcc and https://github.com/bulletphysics/bullet3/issues/174 https://github.com/bulletphysics/bullet3/issues/39
This commit is contained in:
@@ -114,6 +114,7 @@ struct btConnectivityProcessor : public btTriangleCallback
|
|||||||
if(numshared >= 3)
|
if(numshared >= 3)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (numshared)
|
switch (numshared)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
@@ -202,7 +203,6 @@ struct btConnectivityProcessor : public btTriangleCallback
|
|||||||
ang4 = 0.f;
|
ang4 = 0.f;
|
||||||
} else
|
} else
|
||||||
{
|
{
|
||||||
|
|
||||||
calculatedEdge.normalize();
|
calculatedEdge.normalize();
|
||||||
btVector3 calculatedNormalA = calculatedEdge.cross(edgeCrossA);
|
btVector3 calculatedNormalA = calculatedEdge.cross(edgeCrossA);
|
||||||
calculatedNormalA.normalize();
|
calculatedNormalA.normalize();
|
||||||
@@ -213,7 +213,7 @@ struct btConnectivityProcessor : public btTriangleCallback
|
|||||||
isConvex = (dotA<0.);
|
isConvex = (dotA<0.);
|
||||||
|
|
||||||
correctedAngle = isConvex ? ang4 : -ang4;
|
correctedAngle = isConvex ? ang4 : -ang4;
|
||||||
btQuaternion orn2(calculatedEdge,-correctedAngle);
|
btQuaternion orn2 = btQuaternion(btVector3(calculatedEdge.x(), calculatedEdge.y(), calculatedEdge.z()),-correctedAngle);
|
||||||
calculatedNormalB = btMatrix3x3(orn2)*normalA;
|
calculatedNormalB = btMatrix3x3(orn2)*normalA;
|
||||||
|
|
||||||
|
|
||||||
@@ -301,11 +301,6 @@ struct btConnectivityProcessor : public btTriangleCallback
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
|
||||||
{
|
|
||||||
// printf("warning: duplicate triangle\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user