Skip to content

Releases: mrdav30/FixedMathSharp-Unity

FixedMathSharp-Unity v5.0.5

24 Jun 15:24

Choose a tag to compare

Fixes

  • removed stray Samples~.meta

FixedMathSharp-Unity v5.0.4

24 Jun 06:20

Choose a tag to compare

Bug Fix

  • Fixed Samples import

FixedMathSharp-Unity v5.0.3

22 Jun 02:55

Choose a tag to compare

  • Fixed sample scene import path for Unity 6.5

FixedMathSharp-Unity v5.0.2

20 Jun 04:02

Choose a tag to compare

Maintenance

  • bumped FixedMathSharp to v5.0.2

FixedMathSharp-Unity v5.0.1

16 Jun 03:05

Choose a tag to compare

Fixed64 Unity Serialization Fix

Fixed Unity persistence for Fixed64-backed authoring fields.

Unity does not serialize readonly fields, so Fixed64 values backed by a readonly long could be edited in the inspector but reload as zero from assets or prefabs. Fixed64 now uses a Unity-compatible raw-value field layout while remaining engine-agnostic and wrapper-free.

Verified

  • Fixed64 persists through ScriptableObject assets and prefabs.
  • Vector2d and Vector3d persist correctly.
  • Nested structs containing Fixed64 persist correctly.
  • List<T> elements containing Fixed64 and Vector3d persist correctly.
  • Existing fixed-point behavior and raw-value representation are unchanged.

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).