Update of /cvsroot/opal/opal/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21144/src
Modified Files:
Simulator.h
Log Message:
Fixed bug where collisions between two static Solids (at least one of them using a CollisionEventHandler) caused a crash in an ODE function call. Thanks to EarthquakeProof in the forum for catching this.
Index: Simulator.h
===================================================================
RCS file: /cvsroot/opal/opal/src/Simulator.h,v
retrieving revision 1.100
retrieving revision 1.101
diff -C2 -d -r1.100 -r1.101
*** Simulator.h 19 Jun 2005 17:09:13 -0000 1.100
--- Simulator.h 24 Jun 2005 18:46:29 -0000 1.101
***************
*** 69,78 ****
/// This function performs collision detection and simulates
/// everything ahead by the given dt. Internally, it steps through
! /// the simulation iteratively using a fixed step size. "Leftover"
! /// time will be saved until the next time this is called. The
! /// function returns true if at least one time step has been taken.
! /// During collision detection, the following cases are ignored
! /// when deciding whether to collide two Solids (both for physical
! /// contact generation and collision event handling):
/// 1. Two static Solids, each without a CollisionEventHandler.
/// 2. Two Shapes that are part of the same Solid.
--- 69,80 ----
/// This function performs collision detection and simulates
/// everything ahead by the given dt. Internally, it steps through
! /// the simulation iteratively using a fixed step size (so you can
! /// pass in whatever dt you want; it will be broken up into fixed
! /// increments automatically). Any "leftover" time will be saved
! /// until the next time this is called. The function returns true
! /// if at least one time step has been taken. During collision
! /// detection, the following cases are ignored when deciding whether
! /// to collide two Solids (ignored both for physical contact
! /// generation and collision event handling):
/// 1. Two static Solids, each without a CollisionEventHandler.
/// 2. Two Shapes that are part of the same Solid.
***************
*** 80,88 ****
/// 4. Two Solids connected by a fixed Joint.
/// 5. Two Solids connected by a Joint with contacts disabled.
! /// 6. Solid0 is static, Solid1 is sleeping,
/// static-to-sleeping contacts are ignored by the
/// Simulator, and neither Solid has a
/// CollisionEventHandler.
! /// 7. Solid1 is static, Solid0 is sleeping,
/// static-to-sleeping contacts are ignored by the
/// Simulator, and neither Solid has a
--- 82,90 ----
/// 4. Two Solids connected by a fixed Joint.
/// 5. Two Solids connected by a Joint with contacts disabled.
! /// 6. Solid0 is static, Solid1 dynamic and is sleeping,
/// static-to-sleeping contacts are ignored by the
/// Simulator, and neither Solid has a
/// CollisionEventHandler.
! /// 7. Solid1 is static, Solid0 dynamic and is sleeping,
/// static-to-sleeping contacts are ignored by the
/// Simulator, and neither Solid has a
|