Libbulletjme Versions Save

A JNI interface to Bullet Physics and V-HACD

21.0.0

2 weeks ago
  • Made numerous breaking changes to the native API.
  • Deleted the (deprecated) DebugMeshCallback class. (API change)
  • Bugfix: JVM crash while serializing BoundingValueHierarchy (Minie issue 41)
  • Added the new CollisionConfiguration class and related methods:
    • CollisionSpace.getConfiguration()
    • PhysicsDescriber.describe(CollisionConfiguration)
    • a 5-argument CollisionSpace constructor
    • a 4-argument PhysicsSoftSpace constructor
    • a pair of 5-argument PhysicsSpace constructors
  • Added 2 other public methods:
    • BoundingValueHierarchy.isCompressed()
    • MeshCollisionShape.getBvh()
  • Improved the performance of contact filtering by adding an early return from FilteredInteriorCountCallback.
  • Began building Android binaries using OpenJDK 11 (with Android Gradle plugin v7.4.0 and NDK v23.1.7779620) instead of JDK 8 (with Android Gradle plugin v4.2.2 and NDK v21.3.6528147).
  • Began using htons() to configure byte swapping when serializing and deserializing a BoundingValueHierarchy. (This would be a breaking change for big-endian platforms, if any were supported!)
  • Updated the Bullet sources to match SHA1 id=e9c461b0 of the bullet3 project, to add a test for constraint pass in btMultiBody.cpp. (Thanks to Ian Chen)

20.2.0

1 month ago
  • Deprecated the DebugMeshCallback class.
  • Deleted the (unused) native portion of the DebugShapeFactory class.
  • Added 7 new public methods:
    • FastMath.clamp()
    • GImpactCollisionShape.countSubmeshes()
    • GImpactCollisionShape.getSubmesh()
    • MeshCollisionShape.countSubmeshes()
    • MeshCollisionShape.getSubmesh()
    • MyMath.circle(double)
    • MyMath.circle(float)
  • Updated VHACD v4 to version 4.1 .
  • Added more detail to descriptions of GImpact and mesh shapes.
  • Began building Android binaries on a xenial distro, since trusty is nearing its end of life.

android-20.1.0-release7

2 months ago

WIP

20.1.0

2 months ago
  • Bugfix: CharacterController.onGround() returns false positives after stepping (not jumping) off a cliff
  • Added an IndexMesh constructor to efficiently generate visualization meshes for collision shapes; replaced DebugMeshCallback with IndexedMesh in DebugShapeFactory.
  • Added 3 public methods to the IndexedMesh class:
    • copyTriangles()
    • maxDistance()
    • volumeConvex()
  • Improved validation of method arguments.

20.0.0

3 months ago
  • Changed both APIs (both Java and native) of the CustomConvexShape class to better support scaling of custom shapes.
  • Added a 3-argument constructor to the CustomConvexShape class.

19.0.0

3 months ago
  • Changed the Java API:

    • Privatized the PhysicsCollisionObject.setIgnoreCollisionCheck() method.
    • Simplified the signature of VectorSet.addAll().
    • Deleted 14 previously deprecated methods:
      • MyMath.isFinite(Vec3d)
      • PhysicsCollisionObject.listIgnoredIds()
      • PhysicsCollisionObject.setIgnoreList()
      • PhysicsSpace.addCollisionListener()
      • PhysicsSpace.addOngoingCollisionListener()
      • PhysicsSpace.countCollisionListeners()
      • PhysicsSpace.distributeEvents()
      • PhysicsSpace.removeCollisionListener()
      • PhysicsSpace.removeOngoingCollisionListener()
      • Quaternion.multLocal(Vector3f)
      • Quaternion.mult(Vector3f, Vector3f)
      • Transform.combineWithParent()
      • Transform.transformVector()
      • Transform.transformInverseVector()
  • Added return values to 2 native methods:

    • DebugShapeFactory.getTriangles()
    • DebugShapeFactory.getVertices()
  • Added the CustomConvexShape class.

  • Added 2 methods to the pre-existing CompoundMesh class:

    • CompoundMesh.countSubmeshes()
    • CompoundMesh.getSubmesh()
  • Added runtime checks:

    • in the MeshCollisionShape class, for meshes that are too complex
    • in the DebugShapeFactory class, for buildHull() failures
  • Upgraded Node.js to v20.11.0 .

18.6.1

5 months ago

Bugfix: BVH algorithm fails

18.6.0

5 months ago
  • bugfix: PhysicsCharacter disregards ignore lists
  • Deprecated the PhysicsSpace.countCollisionListeners() method.
  • Optimized PhysicsSpace.onContactProcessed() and onContactStarted() to create event objects only when listeners are registered.
  • Added 3 math methods:
    • FastMath.atan()
    • MyMath.log2()
    • MyMath.maxInt()
  • Updated the Bullet source code to match SHA1 ID=6bb8d112 of the bullet3 project.
  • Build MacOSX_ARM64 natives for release using Xcode 14.2 .

18.5.2

9 months ago
  • Added a MyMath.clamp() method with int arguments.
  • Exposed the IndexBuffer wrap constructor to subclasses.
  • Modified MinkowskiSum.createShape() to avoid generating a warning message.

18.4.0

10 months ago
  • Added support for btMinkowskiSumShape via new class MinkowskiSum.
  • Added the protected nativeMargin() method to the CollisionShape class.
  • Changed the return type of the getBaseShape() method in the Convex2dShape class.