ODE CHANGELOG
-------------

the rules for this file:
  * entries are sorted newest-first.
  * summarize sets of changes - dont reproduce every CVS log comment here.
  * don't ever delete anything.
  * keep the format consistent (79 char width, M/D/Y date format).

------------------------------------------------------------------------------

09/08/02 russ

	* added dClosestLineSegmentPoints().
	* implemented dCollideCB().

08/28/02 russ

	* added dJointSetFeedback() and dJointGetFeedback().

08/05/02 russ

	* added dGeomTransformSetInfo() and dGeomTransformGetInfo().

07/13/02 russ

	* added dBodySetForce(), dBodySetTorque(), dWorldImpulseToForce(),
	  dBodyGetPosRelPoint(), dBodyGetPosRelPoint(), dBodyVectorToWorld(),
	  dBodyVectorFromWorld().

	* added dBodyGetPointVel() (thanks to Colin Reed).

	* added a new C++ interface (from Martin C. Martin, with modifications
	  by russ). the old C++ interface is now in odecpp_old.h.

06/25/02 russ

	* added an additional BSD-style licensing option for ODE.

06/23/02 russ

	* added dCloseODE(), contributed by Nate Waddoups and David McClurg.

05/16/02 russ

	* added dSpaceQuery(), contributed by Nate Waddoups.

04/07/02 russ

	* added a section to the documentation for universal joints.
	  this includes a picture of the joint.

04/05/02 russ

	* added a universal joint class (generously contributed by
	  Martin C. Martin). it doesn't (yet) have a motor or joint limits,
	  but it does come with tests.

03/11/02 russ

	* makefile changes to accomodate OSs with command line length
	  limitations (thanks to Norman Lin).

01/06/02 russ

	* added the dBodySetGravityMode() and dBodyGetGravityMode()
	  functions, which change the dxBodyNoGravity body flag.

	* added support for building a DLL with MSVC - there is now a
	  msvc-dll target. thanks to Norman Lin for doing this.

12/28/01 russ

	* added the dParamCFM joint parameter.

12/24/01 russ

	* reworked the build system to make it more cross-platform.
	  there is now a single top-level makefile and a configurator.c
	  program. see the INSTALL file for details.

12/04/01 russ

	* the "angular motor" joint has been completed, and a new section
	  has been added to the documentation.

11/26/01 russ

	* added a new joint type: "angular motor". using this joint is a good
	  way to get ball-joint motors and limits. this is work in progress -
	  it has not been fully implemented or tested yet.

11/22/01 russ

	* replaced the mmap()-based joint group stack (stack.cpp) with a
	  malloc()-based arena stack (obstack.cpp). this will be more
	  portable and should not impact performance.

11/12/01 russ

	* changed the meaning of the 'flags' parameter to dCollide() and
	  related functions: now the size of the contact buffer is kept in
	  the lower 16 bits. this change will be backward compatible.

	* added dBodyGetFiniteRotationMode() and dBodyGetFiniteRotationAxis().

	* added dBodyAddForceAtRelPos() function.

11/11/01 russ

	* added the ability to manually enable and disable bodies.
	  see dBodyEnable(), dBodyDisable(), dBodyIsEnabled().

	* fixed a potential bug: when a world is destroyed that contains
	  joints in joint groups, those joints are marked as "deactivated" in
	  the joint group, so when the joint group is destroyed they can be
	  ignored.

	* the test_boxstack demo has new options to enable and disable bodies.

	* new configuration parameter in config.h: dEFFICIENT_SIZE.

11/11/01 russ

	* started the change log for ODE. changes older than today were added
	  to this file by inspecting the CVS logs.

11/05/01 russ

	* added REAL() constructions for floating point numbers, to prevent
	  many warnings when compiling under VC++.

11/03/01 russ

	* added geometry transform class, documented composite objects.

	* added collision rule: no contacts if both geoms on the same body.
	  this is not the best rule, may have to remove this in the future.

	* new dMassAdd() function.

	* capped cylinder to capped cylinder collision function.

10/31/01 russ

	* increase CFM in some demos to make them more robust.

10/29/01 russ

	* added new accessor functions.

10/19/01 russ

	* added the dJOINT_TWOBODIES flag to the joint, that says it can not
	  be attached to just one body.

10/12/01 russ

	* fixed a collision bug in dCollide() that was causing memory
	  corruption when multiple contacts were being returned.

10/11/01 russ

	* joints can now return m=0 to be "inactive". added a "null" joint
	  to test this.

10/09/01 russ

	* in the LCP solver, try to fail gracefully when s <= 0.

	* dAABBTestFn() API change.

10/08/01 russ

	* fixed a contact swapping bug in dCollide().

10/07/01 russ

	* added capped cylinder geometry object.

09/30/01 russ

	* the test_buggy demo now uses geometry groups.

	* added a dAABBTestFn field in the geometry classes.

09/29/01 russ

	* added geometry groups.

09/20/01 russ

	* added finite rotation stuff.
