catch ode4j error
All checks were successful
studiorailgun/Renderer/pipeline/head This commit looks good
All checks were successful
studiorailgun/Renderer/pipeline/head This commit looks good
This commit is contained in:
parent
d9e0b2a9e5
commit
2fbfaf4887
@ -273,6 +273,7 @@ public class CollisionEngine {
|
||||
!(bodyPointerMap.get(b1).getType() == Collidable.TYPE_TERRAIN && bodyPointerMap.get(b2).getType() == Collidable.TYPE_TERRAIN) &&
|
||||
!(bodyPointerMap.get(b1).getType() == Collidable.TYPE_FOLIAGE_STATIC && bodyPointerMap.get(b2).getType() == Collidable.TYPE_FOLIAGE_STATIC)
|
||||
){
|
||||
try {
|
||||
//calculate collisions
|
||||
int numc = OdeHelper.collide(o1,o2,MAX_CONTACTS,contacts.getGeomBuffer());
|
||||
//create DContacts based on each collision that occurs
|
||||
@ -316,6 +317,12 @@ public class CollisionEngine {
|
||||
c.attach (b1,b2);
|
||||
}
|
||||
}
|
||||
} catch(ArrayIndexOutOfBoundsException ex){
|
||||
//I've found that ode4j occasionally throws an exception on the OdeHelper.collide function.
|
||||
//I don't know why it has out of bounds elements, but it's happening.
|
||||
//Catching the exception here allows the engine to keep running at least.
|
||||
LoggerInterface.loggerEngine.ERROR("ode4j error", ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user