Releases: stephengold/Minie
Releases · stephengold/Minie
7.2.0
- Bugfix:
PhysicsCollisionObject.findInstance()
creates a weak global reference that's never deleted - Bugfix:
DynamicAnimControl.totalMass()
returnsNaN
even when the control is added to aSpatial
- Bugfix: weak global references in
PhysicsCollisionObject
andMultiBody
are never deleted - Added 2 new methods:
CollisionSpace.jniEnvId()
NativeLibrary.jniEnvId()
- Updated the native libraries to v17.5.4 of Libbulletjme.
7.1.0
- Added the capability to generate cylinder shapes in a ragdoll.
- Publicized the
RagUtils.makeRectangularSolid()
method. - Added
DynamicAnimControl
tunings for a Mixamo rig.
7.0.2
- Bugfix:
NullPointerException
inrebuildRigidBody()
while de-serializing an old model - Bugfix: DacWizard doesn't write rotation orders to Java source code
7.0.1
Bugfix: NullPointerException
in PhysicsCollisionObject.readPcoProperties()
7.0.0
-
API changes:
- Privatized
PhysicsCollisionObject.getCollisionFlags()
(a native method) - Added the
static
qualifier toPersistentManifolds.listPointIds()
- Renamed the public logger in the
ConvexShape
class to avoid conflict. - Added a 2nd argument to
PhysicsBody.cloneJoints()
- Corrected the return type of
CharacterController.jmeClone()
- Finalized 3 classes:
NativeSoftBodyUtil
PhysicsRayTestResult
PhysicsSweepTestResult
- Privatized
-
Bug fixes:
DynamicAnimControl
may pass illegal arguments toMyMath.slerp()
- assertion failure when
toString()
is invoked on a collision object or physics joint with no native object assigned - out-of-range exception upon re-entering DacWizard's "bones" screen with a different model
- transforms are not updated for the
getCalculatedOriginA()
andgetCalculatedOriginB()
methods in theNew6Dof
class getPhysicsLocationDp()
andgetPhysicsRotationDp()
return incorrect values for a soft body- cloning bugs:
- physics joints are cloned inaccurately
- ignore lists are cloned inaccurately
- cloning or rebuilding a collision object results in different collision flags
- the feedback parameter of a
Constraint
isn't cloned DacLinks
is incompletely clonedBoneLink.tmpMatrix
is shared between clones
- serialization bugs:
NullPointerException
inPreComposer.read()
RigidBodyMotionState
is never serialized- the pivot offsets of single-ended constraints are de-serialized incorrectly
PhysicsLink.density
is never saved or loaded- the feedback parameter of a
Constraint
is never saved or loaded - the
bindTransform
andpreComposer
fields of aDacLinks
are never saved or loaded
-
Publicized the
PhysicsLink.velocity()
method. -
Added 9 double-precision setters:
CharacterController.warpDp()
MultiBodyCollider.setPhysicsLocationDp()
MultiBodyCollider.setPhysicsRotationDp(Matrix3d)
PhysicsCharacter.setPhysicsLocationDp()
PhysicsGhostObject.setPhysicsLocationDp()
PhysicsGhostObject.setPhysicsRotationDp()
(2 signatures)PhysicsRigidBody.setPhysicsRotationDp(Matrix3d)
PhysicsSoftBody.setPhysicsLocationDp()
-
Added 8 other double-precision methods:
CollisionShape.getScaleDp()
CollisionSpace.rayTestDp()
ManifoldPoints.getPositionWorldOnADp()
ManifoldPoints.getPositionWorldOnBDp()
PhysicsCollisionObject.getPhysicsRotationMatrixDp()
RigidBodyMotionState.getLocationDp()
RigidBodyMotionState.getOrientationMatrixDp()
RigidBodyMotionState.getOrientationQuaternionDp()
-
Added 6 other methods:
New6Dof.calculatedBasisA()
New6Dof.calculatedBasisB()
New6Dof.getRotationMatrix()
PhysicsCollisionObject.collisionFlags()
PhysicsDescriber.describeMatrix()
PhysicsDumper.dump(PhysicsJoint, String)
-
Added
INFO
-level log messages to theNew6Dof
andPhysicsRigidBody
classes. -
Made incremental improvements to the
PhysicsDumper
output format. -
Strengthened argument validation.
-
Updated the native libraries to v17.4.0 of Libbulletjme.
-
Update
DacWizard
andVhacdTuner
to use v0.9.32 of the jme3-utilities-nifty library. -
Built using Gradle v7.6 .
6.2.0
- Added 3 public methods:
PhysicsSpace.isCcdWithStaticOnly()
PhysicsSpace.setCcdWithStaticOnly()
NativeLibrary.countClampedCcdMotions()
- Updated the native libraries to v17.0.0 of Libbulletjme.
6.1.0
- Bugfix:
PreComposer
isn't properly cloned or serialized - Added library support for dynamic collision-shape splitting:
- Added 8 public constructors:
ChildCollisionShape(Vector3f, CollisionShape)
CompoundMesh(CompoundMesh)
CompoundMesh(CompoundMesh, Vector3f)
GImpactCollisionShape(CompoundMesh, Vector3f)
HullCollisionShape(Vector3f...)
IndexedMesh(FloatBuffer)
MeshCollisionShape(boolean, CompoundMesh)
MultiSphere(Vector3f[], float...)
- Added 17 other public methods:
ChildCollisionShape.split()
CollisionShape.aabbCenter()
CollisionShape.canSplit()
CollisionShape.scaledVolume()
CollisionShape.toSplittableShape()
CompoundCollisionShape.connectivityMatrix()
CompoundCollisionShape.countGroups()
CompoundCollisionShape.split()
CompoundMesh.maxMin()
CompoundMesh.split()
ConvexShape.toHullShape()
GImpactCollisionShape.split()
HullCollisionShape.split()
IndexedMesh.copyTriangle()
IndexedMesh.maxMin()
IndexedMesh.split()
MeshCollisionShape.split()
- Added 8 public constructors:
- Other library enhancements:
- Added the
createGImpactShape()
method to theCollisionShapeFactory
class. - Added the
pairTest()
method to theCollisionSpace
class. - Added the
countMeshTriangles()
method to theGImpactCollisionShape
class.
- Added the
- Based on v8.2.0 of the Heart library.
- Updated the native libraries to v16.3.0 of Libbulletjme.
6.0.1
Bugfix: DacLinks
never re-enables hardware skinning (performance issue)
6.0.0
- Protected the no-arg constructors of 6 abstract classes. (API changes)
- Bugfix: issue #30 (
NullPointerException
after removingDynamicAnimControl
from aSpatial
) - Bugfix: I/O resources not safely closed in
VHACDParameters
. - Added V-HACD version 4 including the
Vhacd4
,Vhacd4Parameters
,FillMode
, andVhacd4Hull
classes plus a newHullCollisionShape
constructor and a newCollisionShapeFactory
method. - Added the VhacdTuner sub-project.
- Added the
toMap()
method to theVHACDParameters
class. - Updated the native libraries to v16.1.0 of Libbulletjme.
5.1.0
- Bugfix:
PhysicsRigidBody.setInverseInertiaLocal()
andPhysicsRigidBody.updateMassProps()
don't update the world inertia tensor - Bugfix: when rebuilding a rigid body, many properties are lost
- Added a
DynamicAnimControl
mechanism to report the completion of a blend-to-kinematic operation. - Added the
CompletionListener
interface. - Added the
RigidBodySnapshot
class. - Added the
setIgnoreList()
method to thePhysicsCollisionObject
class. - Added a simpler constructor to
PhysicsSoftSpace
. - Publicized the
rebuildRigidBody()
method. - Updated the native libraries to v16.0.0 of Libbulletjme.
- Built using Gradle v7.5.1 .