Releases: stephengold/Minie
Releases · stephengold/Minie
Minie v0.7.2
Important changes to the library:
- Fixed a bug where the angular factors of
PhysicsRigidBodywere not cloned correctly. - Fixed a bug where the inverse inertia of
PhysicsRigidBodywasn't read/written/cloned. - Write the platform type during
MeshCollisionShapesave and compare during load, since saved BVH may be incompatible between platforms. - Added a
getInverseInertiaWorld()method to thePhysicsRigidBodyclass. - Added a
copyHullVertices()method to theHullCollisionShapeclass. - Simplified
PhysicsDumperoutput. - Updated the native libraries to version 1.0.37 of
Libbulletjme.
Minie v0.7.1
Important changes to the library:
- Fixed read/write/clone bugs in
MeshCollisionShape. - Fixed JME issue #1029 using riccardobl's approach.
- Fixed a crash that occurred while loading a rigid body with mass=0.
- Fixed a
NullPointerExceptionthat occurred while dumping single-ended joints. - Add
jump(void)andsetGravity(float)methods toPhysicsCharacter. - Changed the default gravity direction for a
PhysicsCharacterfrom -Z to -Y. - Moved the
MyObject.describeUser()method to thePhysicsDescriberclass. - Publicized the
BulletAppState.stopPhysics()method for better compatibility withjme3-bullet. - Added 2 new constructors for
BoxCollisionShape. - Dump additional information on rigid bodies in
PhysicsDumper. - Ensure that translation axes are locked in
RangeOfMotion. - Reorganized the location/orientation getters for collision objects.
- Updated the native libraries to version 1.0.34 of
Libbulletjme.
Minie v0.7.0
Important changes to the library:
- Changed the semantics of
DacConfiguration.detach(): from unlinking aBoneto detaching an attachment. (API change) - Removed the
unlinkAttachment()method from theDacConfigurationclass. (API change) - Replaced
CompoundCollisionShape.getChildren()with a newlistChildren()method. (API change) - Fixed a bug where adding a
DynamicAnimControlto aGeometrycaused a crash. - Fixed a bug where an attached model didn't follow the rigid body when its
AttachmentLinkwas in dynamic mode. - Fixed a bug where
MultiSphere.read()threw aClassCastException. - Created a
MinieCharacterControlclass as a replacement for JME'sCharacterControl. - Added a
pinToSelf()method to theDynamicAnimControlclass. - Added a
contains()method to thePhysicsSpaceclass. - Added
findIndex()andlistChildren()methods to theCompoundCollisionShapeclass
Minie v0.6.5
- Fixed various read/write bugs in
BetterCharacterControl. - Cloned the rigid body in
BetterCharacterControl.cloneFields(). - Standardized
BetterCharacterControlgetters to use caller-provided storage. (API changes) - Renamed the
describe(),getAxis(), andparseShapeId()methods in theMyShapeclass. (API changes) - Added a
getRigidBody()method to theBetterCharacterControlclass. - Added accessors for 7 parameters (anisotropic friction, rolling friction, spinning friction, contact damping, contact stiffness, deactivation time, and contact processing threshold) to the
PhysicsCollisionObjectclass. These parameter should affect only rigid bodies and vehicles. - Added a
parseId()method to theMyObjectclass. - Implemented the
Comparableinterface for theCollisionShapeclass. - Added a
setLocationAndBasis()method to thePhysicsCollisionObjectclass. - Added accessors for friction and restitution to the
PhysicsGhostObjectandPhysicsCharacterclasses. These should have no effect. - Updated the native libraries to version 1.0.30 of
Libbulletjme.
Minie v0.6.4
- Standardized the
PhysicsCharacter.getWalkDirection()method. (API change) - Fixed a bug where debug shapes were re-used incorrectly.
- Fixed a bug where 6
PhysicsCharacterparameters were neither loaded nor saved. - Added an
isDynamic()method to thePhysicsRigidBodyclass. - Added optional axes to debug visualizations.
- Moved the CCD accessors to the
PhysicsCollisionObjectclass. - Added a
copyCenter()method to theMultiSphereclass. - Added the capability to disable the startup message.
- Added
getUpDirection()andreset()methods to thePhysicsCharacterclass. - Added the capability to configure the
PhysicsCharactersweep test. - Reduced
CollisionShapevalidation in thePhysicsRigidBodyclass. - Updated the native libraries to version 1.0.29 of
Libbulletjme.
Minie v0.6.3
Important changes to the library:
- Prohibited
PhysicsRigidBody.setKinematic()on static bodies. - Use
EmptyShapeto permit linking a bone without vertices in aDynamicAnimControl. - Added
getSpatial()methods toGhostControlandRigidBodyControl. - Updated the native libraries to version 1.0.24 of
jme3-bullet-native.
Important changes to the examples:
- Added new apps:
HelloDac,HelloBoneLink,TestHullContact. - Added apps from the jme3-examples (sub)project:
TestSimplePhysics,TestRagdollCharacter, andTestBoneRagdoll. - Added example tuning for CesiumMan model. (model not provided)
- Simplified the example tuning for the Jaime model.
Minie v0.6.2
- Fixed bug where
SimpleSolidControl.onAdd()threw aNullPointerExceptionif the control wasn't added to aPhysicsSpace. - Added a
countJoints()method toPhysicsRigidBody. - Added a
setLimit()method toHingeJoint. - Allowed vertical translation of heightfields.
- Based on version 2.18 of the
jme3-utilities-heartlibrary and JME 3.2.2-stable.
Minie v0.6.1
- Added an option to calculate local coordinates in
DynamicAnimControl.findManagerForVertex(). - Added a
chainLengthargument toDynamicAnimControl.setDynamicChain(). - Finalized 4 library methods.
- Created a
CameraOrbitAppStateclass for use in examples. - Based on version 2.17 of the
jme3-utilities-heartlibrary and JME 3.2.2-beta1. - Disable scene-graph culling for animated models in examples.
Minie v0.6.0
Noteworthy additions:
- An
IKControllerclass for inverse kinematics. EachPhysicsLinkmaintains a list of IK controllers. - 3 IK joint creation methods in
DynamicAnimControl:moveToBody(),moveToWorld(), andpinToWorld(). - Each
DynamicAnimControlkeeps a list of IK joints and disables those joints when entering ragdoll mode. - A
BalanceDemowith 2 examples ofIKController. - An
EmptyShapeclass. - A
setDynamicChain()method inDynamicAnimControl. - Optional
BipedandBinocularinterfaces forDynamicAnimControlsubclasses. - A
footprint()method to calculate the "footprint" of aPhysicsLink. - An
animateSubtree()method forDynamicAnimControl. - A constructor for a single-ended
Point2PointJointwith its constraint already satisfied. - An
isActive()method for all collision objects (not just rigid bodies). - An
isDetached()method for all physics links (not just attachments). - A
setContactResponse()method for physics characters (not just bodies). - Simple
compareTo(),equals(), andhash()methods for collision objects.
Bugs fixed:
- Single-ended point-to-point joints were created with incorrect world locations for their pivots.
PhysicsRigidBodyandPhysicsCharacterwere not cloned properly.
Debugging improvements:
- Generally made dumps more compact by trimming trailing zeros.
- In dumps, indicate joints with out-of-space bodies.
- In dumps, indicate joints that lack a dynamic body.
- In dumps, indicate non-responsive rigid bodies.
- In visualizations, draw non-contact physics characters in yellow wireframe.
Other important changes:
- Added the concept of a
DynamicAnimControlbeing "ready" for dynamic-mode only after the 1st physics timestep. This helps avert initialization bugs. - Turned off hardware skinning in
DacLinks.createSpatialData()to provide access to the true positions of mesh vertices. - Modified the
DynamicAnimControl.centerOfMass()method to also estimate the velocity vector of the center of mass. - Links in kinematic mode now update their body's location and velocity for every frame, instead of just for each timestep.
- Eliminated the
PhysicsJoint.getPivotInWorld()method. (API change) - Renamed
DacPhysicsLinkstoDacLinks. (API change) PhysicsSpaceaccessors now return physics-object collections sorted by ID.
Other details:
- Updated the native libraries to version 1.0.21 of
jme3-bullet-native. - Based on version 2.16 of the
jme3-utilities-heartlibrary.
Minie v0.5.1
- Added a "contact response" option for rigid bodies.
- Added an
isStatic()method toPhysicsCollisionObject. - Prohibited scaling of
SimplexCollisionShape. - Added a
MultiSphereconstructor for a capsule shape with specified axis.
Noteworthy changes to debug visualization:
- Fixed a bug where physics objects and joints continued being visualized after setting a filter to exclude them.
- Update debug spatials on every change to
debugMeshNormalsordebugMeshResolution. - For a
CompoundCollisionShape, generate a new debug spatial on every frame. - Visualize non-responsive rigid bodies in yellow.
Noteworthy changes to DynamicAnimControl:
- Added
centerOfMass()andsetAttachmentConfig()methods. - Collect mesh-vertex coordinates in a
HashSet(instead of anArrayList) to increase the efficiency ofcreateSpatialData().
Other details:
- Updated the native libraries to version 1.0.20 of
jme3-bullet-native. - Based on version 2.15 of the
jme3-utilities-heartlibrary.