Skip to content

Releases: mrdav30/FixedMathSharp-Unity

FixedMathSharp-Unity v5.0.0

10 Jun 17:20

Choose a tag to compare

This release updates both Unity Package Manager variants to FixedMathSharp 5.0.0 and aligns the Unity adapters with the core v5 API and coordinate semantics.

Breaking Changes

  • Updated the embedded FixedMathSharp binaries and XML docs to v5.0.0.
  • Unity adapter code now follows the core v5 naming model, including PascalCase vector, quaternion, bounds, and matrix members such as X/Y/Z, W, and M11-style matrix fields.
  • Matrix and transform conversions now use explicit semantic mapping between FixedMathSharp row-vector matrices and Unity transforms, including translation mapping between FixedMathSharp M41/M42/M43 and Unity m03/m13/m23.
  • Removed the old standalone Matrix4x4.Extensions.cs and Transform.Extensions.cs organization; those helpers now live with the fixed-type extension surfaces.

Highlights

  • Added clearer Unity/FixedMathSharp coordinate semantics: +X right, +Y up, and +Z forward are preserved across vector, quaternion, matrix, and transform conversions.
  • Added explicit XY and XZ vector projection helpers for 2D/3D Unity interop.
  • Added Unity-to-fixed transform round-trip helpers, including local/world Transform -> Fixed4x4 -> Transform workflows.
  • Hardened inspector drawers for FixedMathSharp v5 serialization, including fixed number, vector, matrix, quaternion, and angle/rotation drawers.
  • Renamed and refreshed bounds interop around FixedBoundBox and FixedBoundArea.
  • Added EditMode tests covering vector projections, coordinate conventions, matrix translation semantics, and transform round trips.
  • Added package version sync tooling and refreshed developer guidance for maintaining the base package source and generated UPM variants.

FixedMathSharp-Unity v4.0.0

18 May 18:12

Choose a tag to compare

Breaking

  • Upgraded to FixedMathSharp v4.0.0.
  • Moved all *Drawer classes under Editor/Drawers to ease sync management

Internal

  • Added tooling to support multiple packages that share the same base

FixedMathSharp-Unity v3.0.2

23 Apr 15:39

Choose a tag to compare

This update only impacts the "No-MemoryPack" variant

What's New

  • changed com.mrdav30.fixedmathsharp.nomemorypack to com.mrdav30.fixedmathsharp.lean
    • updated asmdef to use unique name to avoid confusion between standard package

FixedMathSharp-Unity v3.0.1

18 Apr 03:51

Choose a tag to compare

This release adds a second Unity package variant to better support Burst AOT workflows.

What's New

  • Added a NoMemoryPack package variant:
    • com.mrdav30.fixedmathsharp.nomemorypack
  • Kept the standard package variant with MemoryPack support:
    • com.mrdav30.fixedmathsharp
  • Reorganized the repository to host both Unity packages from a single Git repo
  • Updated installation documentation for Git URL installs and variant selection

Which Package Should You Use?

  • Use com.mrdav30.fixedmathsharp if you want the standard package with MemoryPack support
  • Use com.mrdav30.fixedmathsharp.nomemorypack if you are targeting Unity Burst AOT or want to avoid the MemoryPack dependency

Notes

If you use Unity Burst AOT, prefer the NoMemoryPack build. MemoryPack's Unity support is centered on IL2CPP via its .NET source-generator path, so the no-MemoryPack variant is the safer choice for Burst AOT scenarios.

Upgrade Impact

This is primarily a packaging and distribution update. Core FixedMathSharp-Unity functionality is otherwise unchanged from v3.0.0.

FixedMathSharp-Unity v3.0.0

14 Apr 18:00

Choose a tag to compare

This release updates the project to FixedMathSharp v3.0.0.
While the dependency is mostly internal, FixedMathSharp numerics are part of our public API surface, so this is released as a breaking update.

  • Breaking
    • Upgraded to FixedMathSharp v3.0.0.
    • FixedMathSharp removed/renamed precision-related members and tightened deterministic numeric APIs (including float-overload removals), which may require consumer code changes.
    • Tolerance/epsilon behavior in numeric comparisons may differ from previous versions.
  • What This Means For Consumers
    • Rebuild and run tests against this release before promotion.
    • Update any call sites relying on removed float-based numeric overloads.
    • Replace Precision-style usage with the new MinIncrement/updated tolerance semantics where applicable.
    • Re-validate tolerance-sensitive logic (movement thresholds, comparisons, convergence checks, serialization expectations).

FixedMathSharp-Unity v2.2.0

02 Apr 04:22

Choose a tag to compare

This release updates the Unity package to FixedMathSharp v2.1.1 and adds a major Unity interop pass across transforms, matrices, and bounds.

Highlights

  • Added Transform conversion helpers for Fixed4x4 and Fixed3x3, including local/world rotation and rotation-scale variants.
  • Added reverse helpers to apply Fixed4x4 and Fixed3x3 data back onto Unity Transforms, plus factory methods for creating preview transforms from fixed matrices.
  • Added Matrix4x4 interop for round-tripping between Unity matrices and Fixed4x4/Fixed3x3.
  • Added Bounds interop for BoundingBox and BoundingArea.
  • Added custom editor drawers for Fixed3x3 and Fixed4x4 to make matrix inspection much easier in Unity.
  • Added a new demo scene with FixedTransformInteropDemo and FixedBoundsInteropDemo for visual validation of the new conversion pipeline.
  • Refreshed the README and package metadata, and bundled the additional runtime dependencies required by the updated core library.

FixedMathSharp-Unity v2.1.1

08 Mar 20:06

Choose a tag to compare

  • removed old MessagePack reference

FixedMathSharp-Unity v2.1.0

07 Mar 19:35

Choose a tag to compare

Fixed missing package dependencies for MemoryPack

FixedMathSharp-Unity v2.0.0

04 Mar 06:01

Choose a tag to compare

Breaking Change

  • Bumped FixedMathSharp to v2.0.0
    • drops MessagePack support in favor of MemoryPack

FixedMathSharp-Unity v1.1.3

08 Jun 17:19

Choose a tag to compare

Removed dditor build conditional from extension runtime classes