Skip to content

Releases: stephengold/Minie

Minie 0.9.2

08 Jun 05:00

Choose a tag to compare

  • API changes:
    • Privatized 5 fields in the GhostControl class.
    • Removed the rebuildSoftBody() method from the PhysicsSoftBody class.
    • Added a Transform argument to the updateMesh() method in the NativeSoftBodyUtil class.
  • New features for soft-body physics:
    • Added a SoftBodyControl class.
    • Allowed setting maxSubSteps to 0 for a variable-length time step.
    • Added maxTimeStep parameter to PhysicsSpace, for use with a variable-length time step.
    • Added a warning when setGravity() is applied to a body that isn't in any space.
    • Publicized the distributeEvents() method of PhysicsSpace, for use in non-BulletAppState applications.
    • An isEmpty() method for PhysicsSoftBody.
  • Built for compatibility with Java 7.
  • Added debug visualization of soft-body anchors.
  • Avoided cloning/serializing world info and gravity: adding to a physics space would trash these data.
  • Improvements to DacWizard and examples:
    • Added a TestSoftBodyControl application.
    • Made ClothGrid dynamic and added a reposition() method.
    • Changed ClothGrid to minimize directional bias.
    • Added Sony Duck model with license.
    • Use LWJGL v3 to allow fullscreen mode on Linux systems (JME issue #947).
  • Various improvements to physics dumps.
  • Updated the native libraries to version 1.0.73 of Libbulletjme.
  • Based on version 2.28.1 of the jme3-utilities-heart library.

Minie 0.9.1

29 May 06:47

Choose a tag to compare

  • API changes:
    • Privatized the motionState field in the PhysicsRigidBody class.
    • Removed methods from the PhysicsSoftBody class:
      • addAeroForceToNode()
      • getPhysicsTransform()
      • setPhysicsRotation()
      • setPhysicsTransform()
    • Renamed the PhysicsRigidBody.getPhysicsTransform() method to extrapolateTransform().
    • Moved the SoftBodyWorldInfo class to the com.jme3.bullet package.
    • Converted the PhysicsSoftBody.Config class to an external class.
  • Expanded soft-body physics: got aerodynamics and anchors working.
  • Improved debug visualization of soft bodies:
    • override default material for shapes if requested
    • don't visualize links if the body has faces
    • visualize clusters
    • generate/update normals if requested
  • Other changes to debug visualization:
    • Ensured that static rigid bodies are visualized in blue.
    • Changed the wireframe debug materials from single-sided to double-sided.
    • Added a debugMeshInitListener option to add texture coordinates.
  • Added a MinieAssets sub-project.
  • Overrode the default toString() method for collision objects.
  • Added methods to the PhysicsSoftBody class:
    • copyClusterMasses()
    • countNodesInCluster()
    • listNodesInCluster()
    • setWindVelocity()
    • windVelocity()
  • Added Aero and ClothGrid classes.
  • Updated the native libraries to version 1.0.70 of Libbulletjme.
  • Based on version 2.28 of the jme3-utilities-heart library.

Minie 0.9.0

15 May 01:21

Choose a tag to compare

  • Added a minimal implementation of soft-body physics, based on Dokthar's prior work, that included ConfigFlag, Icosphere, MeshEdge, NativeSoftBodyUtil, NetGrid, PhysicsBody, PhysicsSoftBody, PhysicsSoftSpace, RayTestFlag, Sbcp, SoftBodyWorldInfo, SoftPhysicsAppState, SoftDebugAppState, SoftBodyDebugControl, and TestSoftBody.
  • Re-publicized the update() method and finalized the getSpaceId() method of PhysicsSpace.
  • Moved the isInWorld() method from PhysicsRigidBody to PhysicsCollisionObject.
  • Moved TubeTreeMesh class to the jme3utilities.minie.test.mesh package.
  • Used BinaryExporter.saveAndLoad() to simplify load/save testing.
  • Updated the native libraries to version 1.0.61 of Libbulletjme.
  • Based on version 2.27 of the jme3-utilities-heart library.

Minie v0.8.1

28 Apr 16:00

Choose a tag to compare

  • API changes:
    • Privatized 2 protected fields in the BulletDebugAppState class.
    • Privatized 7 protected fields in the RigidBodyControl class.
    • Privatized 4 protected fields in the VehicleControl class.
    • Renamed the MyObject class to MyPco.
    • Removed the BubbleControl, SimpleGhostControl, and SimpleSolidControl classes.
    • De-publicized the BoundingBoxDebugControl constructor.
    • Removed the setPivot() method from the SixDofJoint class.
  • Changed the semantics of the addAll() and removeAll() methods in the PhysicsSpace class; they no longer attempt to add/remove physics joints.
  • Added a swept-sphere visualization feature.
  • Added assertions to catch attempts to read the angular/linear velocities of non-dynamic rigid bodies.
  • Added methods to calculate the kinetic/mechanical energy of rigid body or a ragdoll.
  • Improved thread safety.
  • Added command-line options to DacWizard: --openGL3, --forceDialog, --verbose
  • Added a getAngularVelocityLocal() method to PhysicsRigidBody.
  • Moved the FilterAll class from MinieExamples into the library.
  • Added getFrameTransform() methods for cone, hinge, 6dof, and slider joints.
  • Updated the native libraries to version 1.0.50 of Libbulletjme.
  • Upgraded to Gradle v5.3.1 .
  • Based on version 2.26 of the jme3-utilities-heart library.

Minie v0.8.0

16 Apr 03:34

Choose a tag to compare

  • Made IK joints aware of ragdoll mode. (API changes)
  • Privatized the PhysicsSpace.physicsSpaceId field. (API change)
  • Privatized all fields in VehicleTuning. (API change)
  • Added getAngles() and getPivotOffset() to the SixDofJoint class.
  • Publicized RagUtils.coordsMap() and added RagUtils.findSkeletonControl().
  • Implemented Comparable, equals(), and hashcode() in the LinkConfig class.
  • Updated the native libraries to version 1.0.49 of Libbulletjme.
  • Avoided invoking PhysicsRigidBody.addJoint() directly.
  • Based on version 2.25 of the jme3-utilities-heart library.
  • Made progress on applications:
    • Added DacWizard and TestIssue1058 applications.
    • Added a Face interface to each model tuning.

Minie v0.7.7

29 Mar 01:59

Choose a tag to compare

Moved RagUtils.vertexLocations() and VectorSet to the jme3-utilities-heart library.

Minie v0.7.6

25 Mar 06:17

Choose a tag to compare

  • Fixed a bug where attachmentMass() could return an outdated value.
  • Improved the performance of volume calculations for hull and multi-sphere shapes.
  • Various API changes in RagUtils.
  • Added a MultiSphere constructor for a 2-sphere shape, based on a RectangularSolid.
  • Added boundingBox() methods for collision shapes and collision objects.
  • Added countRigidBodies() and getPcoLists() methods to the PhysicsSpace class.
  • Added a density() method to the PhysicsLink class.
  • Added a HullCollisionShape constructor based on a FloatBuffer.
  • Added a TwoSphere heuristic for generating PhysicsLink shapes.
  • Added a VectorSet abstract class with 2 implementations.
  • Updated the native libraries to version 1.0.40 of Libbulletjme.

Minie v0.7.5

20 Mar 02:10

Choose a tag to compare

  • Added a DumpFlags enum and used it to simplify the API of PhysicsDumper. (API change)
  • Added a DumpFlag to disable dumping collision objects in physics spaces.
  • Added a getSpatial() method to the VehicleControl class.
  • Based on version 2.23 of the jme3-utilities-heart library and JME 3.2.3-stable.

Minie v0.7.4

12 Mar 09:09

Choose a tag to compare

  • Fixed bugs that caused crashes in GImpactCollisionShape.read() and GImpactCollisionShape.write().
  • Made PhysicsDescriber and PhysicsDumper both cloneable.
  • Added a countHullVertices() method to the HullCollisionShape class.
  • Added 2 configuration flags to PhysicsDumper.
  • Reorganized the PhysicsDumper code related to joints.
  • Updated the native libraries to version 1.0.37 of Libbulletjme.
  • Based on version 2.22 of the jme3-utilities-heart library.

Minie v0.7.3

09 Mar 21:34

Choose a tag to compare

Fixed a bug where HullCollisionShape.copyHullVertices() didn't fill the result array.