Skip to content

Releases: stephengold/Minie

3.1.0-test4

07 Jan 00:29
Compare
Choose a tag to compare
3.1.0-test4 Pre-release
Pre-release

A pre-release of v3.1.0, intended for advance testers.

3.1.0-test3

05 Jan 18:22
Compare
Choose a tag to compare
3.1.0-test3 Pre-release
Pre-release

A pre-release of v3.1.0, intended for advance testers.

3.1.0-test2

15 Nov 06:39
Compare
Choose a tag to compare
3.1.0-test2 Pre-release
Pre-release
  • Updated the native libraries to v9.2.3 of Libbulletjme (minSdkVersion=22).
  • Upgraded to JUnit v4.13.1 .

3.1.0-test1

14 Nov 08:55
Compare
Choose a tag to compare
3.1.0-test1 Pre-release
Pre-release

A pre-release of v3.1.0, intended for advance testers.

3.0.0

01 Sep 02:12
Compare
Choose a tag to compare
  • Bug fixes:
    • collision-group checks are ineffective due to missing parentheses
    • ConcurrentModificationException thrown by the "Physics Cleaner" thread
    • assertion failures while tracking the ID of a soft-body anchor
    • JVM crash while reading the collision flags of a static rigid body
    • assertion failure during PhysicsLink.postTick()
  • API changes:
    • changed the semantics of the countJoints() and listJoints() methods in the PhysicsBody class
    • changed the return type of the rayTestRaw() method in the CollisionSpace class
  • New DynamicAnimControl features:
    • a mechanism to ignore collisions between physics links that aren't directly joined
    • a mechanism to apply bone rotations (from an AnimClip, for instance) to linked bones in dynamic mode
    • setLocalTransform() methods for the managed bones of physics links
    • a fixToWorld() method to lock a PhysicsLink into position
    • an adjustable pinToWorld() method
  • Improvements to New6Dof constraints:
    • enable springs in RangeOfMotion for more effective locking of axes
    • a NewHinge subclass inspired by Bullet's btHinge2Constraint
    • getters for the calculated transforms
  • More convenience:
    • added a factory method to construct a satisfied, double-ended New6Dof constraint using physics-space coordinates (instead of local ones)
    • added a clearIgnoreList() method to the PhysicsCollisionObject class
    • added a CcdFilter class to select rigid bodies with CCD active
    • added a DacUserFilter class to select physics objects belonging to a particular DynamicAnimControl
    • added findEnd() and findOtherBody() methods to the PhysicsJoint class
    • publicized the boneIndex() methods of BoneLink and TorsoLink
    • construct a RangeOfMotion (for a fixed joint) using Euler angles
  • Improvements to PhysicsDumper:
    • dump the positions of locked DoFs in a New6Dof
    • an option to dump the ignored PCOs of a PhysicsCollisionObject
    • dump the application data of a PhysicsCollisionObject
  • Built using Gradle v6.6.1 .
  • Based on:
    • v6.0.0 of the Heart Library,
    • v0.9.0 of the jme3-utilities-ui library,
    • v0.6.0 of the Wes Library, and
    • v0.9.15 of the jme3-utilities-nifty library.
  • Updated the native libraries to v9.2.2 of Libbulletjme.

2.0.1

09 Aug 01:17
Compare
Choose a tag to compare

Bugfix: characters and ghosts ignore their own ignore lists!

2.0.0

23 Jul 01:58
Compare
Choose a tag to compare
  • Changes to the library API:

    • Deleted the MinieCharacterControl and VHACDResults classes.
    • Replaced inner class PhysicsSoftBody.Material with SoftBodyMaterial.
    • Deleted deprecated methods and constructors.
    • De-publicized 7 debug-control classes.
    • Changed arguments of the PhysicsCharacter, CharacterControl, and Convex2dShape constructors from CollisionShape to ConvexShape.
    • Changed an argument of a HullCollisionShape constructor to float....
    • Changed the shape arguments of sweepTest() methods to ConvexShape.
    • Changed an argument of the volumeConvex() method to ConvexShape.
    • Privatized 6 fields:
      • CollisionSpace.physicsSpaceTL
      • CompoundMesh.scale
      • PhysicsSpace.physicsJoints
      • PhysicsSpace.pQueue
      • VHACD.indices
      • VHACD.vertices
    • Changed 7 returned collections to unmodifiable collections.
    • Based the PhysicsCollisionObject and PhysicsCollisionEvent classes on the NativePhysicsObject class.
    • Added a private constructor to the VHACD class.
  • Bugfix: location not initialized when creating a PhysicsCharacter.

  • Eliminated all finalize() methods by implementing a cleaner thread and adding 4 classes:

    • BoundingValueHierarchy
    • CharacterController
    • NpoTracker
    • VehicleController
  • Added collision listeners for ongoing contacts (to the PhysicsSpace class).

  • Added totalAppliedForce() and totalAppliedTorque() methods to the PhysicsRigidBody class.

  • Added 2 new constructors to the HeightfieldCollisionShape class.

  • Implemented debug visualization for local physics.

  • Added argument validation to the setMaxSlope() method in the PhysicsCharacter class.

  • Added a setContactCalcArea3Points() method to the PhysicsCollisionEvent class.

  • Added accessors for the speculative contact restitution flag of a PhysicsSpace.

  • Added 3 compatibility methods to the PhysicsCollisionEvent class.

  • Dump additional information for rigid bodies.

  • Improved descriptions of user objects.

  • Upgraded to Gradle v6.5.1, Libbulletjme v8.4.0, and JUnit v4.13 .

2.0.0-test2

04 Jul 16:35
Compare
Choose a tag to compare
2.0.0-test2 Pre-release
Pre-release

Another pre-release of v2.0.0, intended for advance testers.

2.0.0-test1

19 Jun 07:54
Compare
Choose a tag to compare
2.0.0-test1 Pre-release
Pre-release

A pre-release of v2.0.0, intended for advance testers.

1.7.0

31 May 23:37
Compare
Choose a tag to compare
  • Fixed bugs in the library:

    • kinematic PhysicsRigidBody cloned as a dynamic one
    • CompoundCollisionShape.correctAxes() yields incorrect results when multiple children reference the same shape
    • native objects of SoftBodyWorldInfo and VehicleTuning are never freed
    • worldInfo field of PhysicsSoftBody not cloned, loaded, or saved
    • FINE logging of collision spaces reports nativeId=0 in create()
  • Deprecated many obsolete methods slated to be removed from v2.

  • Added debug-visualization features:

    • rebuild the debug shape of a CompoundCollisionShape ONLY when it changes
    • arrows to visualize cluster/node/rigid body velocity vectors
    • markers to visualize pinned soft-body nodes
    • arrows to visualize rigid/soft body gravity vectors
    • add texture coordinates when visualizing a PlaneCollisionShape
    • specify line widths for PhysicsJoint debug arrows
    • configure the shadow mode of the debug root node
  • Additional PhysicsDumper output:

    • restitution of each rigid body
    • angular velocity of each dynamic rigid body
    • split-impulse parameters of each SolverInfo
    • isGravityProtected for rigid bodies and isWorldInfoProtected for soft bodies
    • native ID for each SoftBodyWorldInfo
  • Other added library features:

    • an application-specific data reference for each PhysicsCollisionObject
    • an ignore list for each PhysicsCollisionObject
    • contact tests for collision spaces
    • an option to protect the gravity of a PhysicsRigidBody from modification by a PhysicsSpace
    • an option to protect the world info of a PhysicsSoftBody from replacement by a PhysicsSoftSpace
    • methods to rotate/translate a CompoundCollisionShape
    • a method to activate all collision objects in a PhysicsSpace
    • publicized the addJoint() and removeJoint() methods of PhysicsSpace
    • keep track of the PhysicsSpace (if any) to which each PhysicsJoint is added
    • construct an IndexedMesh from the debug mesh of a CollisionShape
    • construct a MeshCollisionShape from a collection of native meshes
    • a method to copy the cluster velocities of a PhysicsSoftBody
    • getters for the combined rolling/spinning friction of a PhysicsCollisionEvent
    • access the split-impulse parameters of a SolverInfo
    • nativeId() methods for PhysicsCollisionEvent and PhysicsCollisionObject, to prepare for v2
    • getters for the proxy group and proxy mask of a PhysicsCollisionObject
    • construct a CompoundCollisionShape with specified initial capacity
  • Major refactoring efforts:

    • many classes based on a new NativePhysicsObject class
    • 4 debug controls based on a new CollisionShapeDebugControl class
    • physics appstate configuration using a new DebugConfiguration class
  • Updated the native libraries to v6.4.0 of Libbulletjme.

  • Based on:

    • the 3.3.2-stable release of jMonkeyEngine,
    • v5.5.0 of the Heart Library,
    • v0.8.3 of the jme3-utilities-ui library, and
    • v0.5.0 of the Wes Library.