Releases: stephengold/Libbulletjme
Releases Β· stephengold/Libbulletjme
17.3.0
- Bugfix:
getPhysicsRotationDp()
returns wrong rotation for a soft body - Overrode the
equals()
andhashCode()
methods of theMatrix3d
class. - Added 6 double-precision accessors for physics objects:
MultiBodyCollider.setPhysicsRotationDp()
PhysicsCollisionObject.getPhysicsRotationMatrixDp()
PhysicsGhostObject.setPhysicsRotationDp(Matrix3d)
PhysicsRigidBody.setPhysicsRotationDp(Matrix3d)
RigidBodyMotionState.getOrientationMatrixDp()
RigidBodyMotionState.getOrientationQuaternionDp()
- Added 4 new math methods:
Matrix3d.isIdentity()
Quatd.isRotationIdentity()
Quatd.isZero()
Validate.nonZero(Quatd)
- Dramatically simplified the
jmeBulletUtil
native class. - Integrated bulletphysics/bullet3#4284
17.2.0
- Added 4 double-precision accessors for physics objects:
CollisionSpace.rayTestDp()
ManifoldPoints.getPositionWorldOnADp()
ManifoldPoints.getPositionWorldOnBDp()
PhysicsGhostObject.setPhysicsRotationDp()
- Added the
Matrix3d
math class. - Added the
mult(Quatd, Quatd)
andtoRotationMatrix()
methods to theQuatd
class. - Added the
combineWithParent()
andtransformInverseVector()
methods to theTransformDp
class. - Added the
divideLocal()
method to theVec3d
class.
17.1.0
- Bugfix:
getPhysicsLocationDp()
returns wrong location for a soft body - Added 8 double-precision accessors for physics objects:
CharacterController.warpDp()
CollisionShape.getScaleDp()
MultiBodyCollider.setPhysicsLocationDp()
PhysicsCharacter.setPhysicsLocationDp()
PhysicsCollisionObject.getTransformDp()
PhysicsGhostObject.setPhysicsLocationDp()
PhysicsSoftBody.setPhysicsLocationDp()
RigidBodyMotionState.getLocationDp()
- Added the
TransformDp
math class. - Added the
isFiniteDouble()
andisFinite(Vec3d)
methods to theMyMath
class. - Added the
finite(Vec3d, String)
method to theValidate
class.
17.0.0 - CCD with static bodies made optional
- Renamed the public logger in
ConvexShape
. (API change) - Renamed 2 protected fields in
RigidBodySnapshot
. (API changes) - Protected 5 no-arg constructors. (API changes)
- Qualified 6 public classes as
final
. (API changes) - Privatized 27 protected fields in
RigidBodySnapshot
. - Added 3 new methods:
NativeLibrary.countClampedMotions()
PhysicsSpace.isCcdWithStaticOnly()
PhysicsSpace.setCcdWithStaticOnly()
- Upgraded Node.js to v18.12.1
16.3.0
- Bugfix: shape's scale isn't copied in
HullCollisionShape.split()
- Bugfix: shape's scale is ignored by
ChildCollisionShape.split()
- Bugfix:
MeshCollisionShape.split()
doesn't preserve scaling - Bugfix:
GImpactCollisionShape.split()
doesn't preserve scaling - Added the
Generator
class for randomization. - Added a 4-sphere constructor to the
MultiSphere
class. - Added 4 more math methods:
MyMath.fromAngles()
MyMath.isBetween()
MyMath.max()
RectangularSolid.halfExtents()
- Added the
root2
constant to theMyMath
class.
16.2.1 - collision-shape splitting
-
Bugfix: assertion failure in
VHACDHull
after a failed decomposition -
Added the
pairTest()
method to theCollisionSpace
class. -
Implemented collision-shape splitting:
- Added
split()
methods to 7 classes:ChildCollisionShape
CompoundCollisionShape
CompoundMesh
GImpactCollisionShape
HullCollisionShape
IndexedMesh
MeshCollisionShape
- Added the
canSplit()
andtoSplittableShape()
methods to theCollisionShape
class. - Added some constructors to 5 classes:
CompoundMesh
GImpactCollisionShape
HullCollisionShape
IndexedMesh
MeshCollisionShape
- Added the
toHullShape()
method to theConvexShape
class.
- Added
-
Implemented center/volume estimation for collision shapes:
- Added the
aabbCenter()
andscaledVolume()
methods to theCollisionShape
class. - Added the
maxMin()
method to theCompoundMesh
class. - Added
volumeConvex()
methods to theDebugMeshCallback
andDebugShapeFactory
classes. - Added the
copyTriangle()
andmaxMin()
methods to theIndexedMesh
class.
- Added the
-
Added math classes:
DistinctVectorValues
MyVolume
RectangularSolid
Triangle
VectorSetUsingBuffer
-
Added math methods:
MyBuffer.covariance()
MyBuffer.maxMin()
MyBuffer.mean()
MyMath.cube()
MyMath.mid(float, float, float)
MyMath.min(float...)
MyMath.modulo(int, int)
MyMath.transformInverse()
for aTriangle
- the normal-and-displacement constructor for a
Plane
Plane.pseudoDistance()
Vector3f.crossLocal()
Vector3f.distance()
Vector3f.mult(float, Vector3f)
Vector3f.mult(Vector3f)
-
Added the
FastMath.QUARTER_PI
constant. -
Added the
VectorSet
interface. -
Added supplemental V-HACD methods:
VHACDParameters.toMap()
Vhacd4Parameters.nextFillMode()
Vhacd4Parameters.toMap()
-
Updated the Bullet sourcecode to match SHA1 ID=dad061fc1 of the bullet3 project.
16.1.0 - V-HACD v4
- Bugfix: I/O resources not safely closed in
VHACDParameters
. - Added V-HACD v4 without removing the classic version:
- Added the
Vhacd4
,Vhacd4Hull
, andVhacd4Parameters
classes. - Added the
FillMode
enum. - Added a new constructor for
HullCollisionShape
.
- Added the
- Added the
setIgnoreList()
method to thePhysicsCollisionObject
class. - Added a simpler constructor to
PhysicsSoftSpace
. - Overrode the
toString()
method ofVHACDParameters
. - Publicized the
rebuildRigidBody()
method of thePhysicsRigidBody
class. - Created per-class loggers for
SoftBodyMaterial
andSoftBodyWorldInfo
. - Upgraded the GCC compilers used to build Linux natives:
- Linux32 and Linux64 non-multithreaded, from v4.7.3 to v7.5.0
- Linux_ARM32hf and Linux_ARM64, from v5.4.0 to v6.5.0
- Linux64 multithreaded and Linux_ARM32 with software floating-point, from v5.4.0 to v7.5.0
16.0.0
- Qualified 13 utility classes as
final
. (API changes) - Protected 2 constructors of
SoftPhysicsJoint
. (API changes) - Bugfix:
PhysicsRigidBody.setInverseInertiaLocal()
andPhysicsRigidBody.updateMassProps()
don't update the world inertia tensor - Bugfix: static rigid body isn't rebuilt when assigned a positive mass
- Bugfix: when rebuilding a rigid body, its ignore list is lost
- De-privatized the
setIgnoreCollisionCheck()
method inPhysicsCollisionObject
.
15.2.1
- Bugfix: values of 3
ConfigFlag
constants are out-of-date - Bugfix: Android native libraries are missing an object file
- Bugfix:
ConfigFlag.describe()
ignores 3 flags - Added the
DeformableSpace
,MyShape
, andReducedDeformableBody
classes. - Added constants
SDF_MDF
andSDF_RDN
to theConfigFlag
class. - Added the
tan()
method to theFastMath
class. - Added the
isOdd()
method to theMyMath
class. - Added the
removeSuffix()
method to theMyString
class. - Added a warning when the native library version is unexpected.
- Updated the Bullet sourcecode to match SHA1 ID=a1d96646 of the bullet3 project.
15.1.0 - configure deactivation globally
- Added accessors for global deactivation settings:
PhysicsBody.getDeactivationDeadline()
PhysicsBody.isDeactivationEnabled()
PhysicsBody.setDeactivationDeadline()
PhysicsBody.setDeactivationEnabled()
- Added public setters for constraint pivots:
New6Dof.setPivotInA()
New6Dof.setPivotInB()