Skip to content

Releases: JOML-CI/JOML

1.2.6-SNAPSHOT release

19 Jun 22:09
Compare
Choose a tag to compare
Pre-release

Changes to the 1.2.5-SNAPSHOT release:

  • added AngleAxis4f.get(Matrix3f)
  • added Matrix3f.rotate[XYZ] overloads with dest parameter
  • added lookAlong/setLookAlong to Matrix3f
  • added Matrix4f.unproject and .project with vector parameters
  • added Matrix4f.reflect/reflection - computes a reflection transformation that reflects about a given arbitrary plane either specified via a general plane equation or via normal and point
  • added Vector3x.normalize with dest parameter

1.2.5-SNAPSHOT release

18 Jun 09:15
Compare
Choose a tag to compare
Pre-release

Changes to the 1.2.4-SNAPSHOT release:

  • added more conversion methods between matrix, quaternion and angle-axis classes
  • support for more matrix and quaternion methods taking a 'dest' parameter
  • renamed Quaternion.rotateDirToPositiveZ to lookRotate() - this is how Unity names this method and it behaves in the same way
  • added Quaternion.rotateTo - rotates a given direction to point along another direction using a shortest arc rotation (this is somewhat the generalization of lookRotate, but without an 'up' vector)

1.2.4-SNAPSHOT release

17 Jun 11:14
Compare
Choose a tag to compare
Pre-release
  • added conversion methods between AngleAxis4f, Quaternion, Matrix3f and Matrix4f
  • added transform(vector) method for AngleAxis4f
  • changed Matrix3d to use degrees consistently for all rotate methods
  • added rotation[XYZ] methods to Matrix3f
  • added rotate() methods from Matrix4f to Matrix3f
  • added Quaternion.rotateDirToPositiveZ() - this will apply a rotation that maps the given 'dir' to the positive z-axis, and thus acts almost like GLU lookAt and the Matrix4.lookAlong() methods, except that those map to the negative z-axis to comply with OpenGL's coordinate system handedness conventions
  • renamed QuaternionD.LookAt to .lookAt
  • changed Quaternion.div to post-multiply by the inverse of the right-side quaternion - this is also how XNA is doing quaternion math and it is consistent with mul() and all methods in Quaternion and Matrix classes that apply transformations using post-multiplication, which in turn is what OpenGL/GLU does
  • also made JOML pass Findbugs static code analysis with default settings
  • JavaDocs

1.2.3-SNAPSHOT release

15 Jun 19:59
Compare
Choose a tag to compare
Pre-release

Changes to the 1.2.2-SNAPSHOT release:

  • fixed Quaternion.invert
  • added equals/hashCode to AngleAxis4f and quaternion classes
  • added Quaternion.transform(Vector4f) - to transform the vector by the quaternion
  • added Vector.mul(Quaternion) - also to transform the vector by the quaternion
  • added Quaternion.get(AngleAxis4f) - to convert the quaternion into the corresponding angle-axis representation
  • added Quaternion.difference - (computes the difference between two quaternions - geometrically this is the rotation that needs to be applied to the first quaternion in order to get the second quaternion)

1.2.2-SNAPSHOT release

14 Jun 15:05
Compare
Choose a tag to compare
Pre-release

Changes to the 1.2.1-SNAPSHOT release:

  • added Matrix4f.rotate with a 'dest' parameter
  • renamed Quaternion.set(angleaxis) to rotationAxis
  • added Quaternion.rotation() which sets a rotation using the given degrees around the base unit axes of the coordinate system (to reflect the Matrix4f class)
  • added Quaternion.rotate() which applies (post-multiplies) a rotation to the quaternion using the given degrees around the base unit axes of the coordinate system (to reflect the Matrix4f class)
  • added shortcut rotate[XYZ] and rotation[XYZ] methods to Quaternion

1.2.1-SNAPSHOT release

13 Jun 18:26
Compare
Choose a tag to compare
Pre-release

Changes to the 1.2.0 release:

  • added Quaternion.set(matrix) allowing to set the quaternion to the rotational part of a matrix
  • added Quaternion.transform(vector) to apply the quaternion rotation to a vector
  • added Quaternion.nlerp(), which is a non-spherical linear interpolation with non-linear (angular) velocity
  • added Quaternion.integrate(), which allows to apply angular velocity to an existing quaternion to build a new rotation
  • added Vector2f.lengthSquared() and Vector2f.mul()
  • added Vector3.dot(), .reflect() and .half()
  • refactored Quaternion.set*()/.get*() methods to just name .set()/.get()
  • JavaDocs

1.2.0 release

09 Jun 18:06
Compare
Choose a tag to compare

Changes compared to the 1.1.7-SNAPSHOT release:

1.1.7-SNAPSHOT release

06 Jun 10:47
Compare
Choose a tag to compare
Pre-release

Changes compared to the 1.1.6-SNAPSHOT release:

  • Fixed Quaternion.conjugate (thanks to FortressBuilder)
  • Removed some hardly useful methods
  • Make matrix classes more in sync with Matrix4f
  • Changed MatrixStack.get to return the MatrixStack instead of the FloatBuffer
  • Added toString(NumberFormat) to the matrix classes
  • Fixed a few JavaDocs

1.1.6-SNAPSHOT release

05 Jun 18:38
Compare
Choose a tag to compare
Pre-release

Difference to the 1.1.5 release:

  • Removed the class name from toString() output
  • JavaDocs
  • Added project() and unproject() to Matrix4f (known from GLU)
  • Fixed bug in Vector3f.sub (thanks to FortressBuilder from the LWJGL forum)
  • Added hashCode and equals methods to the vector classes (thanks to zmrodriguez91 for contribution)

1.1.5 release

03 Jun 13:49
Compare
Choose a tag to compare

Changes to the 1.1.5-SNAPSHOT release:

  • methods operating on FloatBuffer do not change the buffer position
  • Added even more JavaDoc