This major release upgrades both Unity package variants to FixedMathSharp 7.0.0 and expands the Unity adapter layer with clearer, deterministic math, geometry, bounds, transform, frustum, and curve interop.
Highlights
- Added Unity camera and projection-matrix conversion to
FixedBoundFrustum, including caller-owned plane buffers for allocation-conscious workflows. - Added exact Unity
AnimationCurve→FixedCurveconversion, explicit sampled baking for unsupported curves, andFixedCurveexport back to Unity. - Expanded interop for
Vector4d, rays, planes, rectangles, bounds, matrices, andFixedTransformhierarchies. - Corrected matrix conversion between Unity's column-vector convention and FixedMathSharp's row-vector convention.
- Added atomic
Try*conversions and transform application that safely reject semantic loss or leave targets unchanged. - Improved Unity serialization coverage for non-zero
Fixed64,Vector2d,Vector3d, andVector4dvalues in ScriptableObjects and prefabs. - Published a searchable DocFX API reference and package changelog.
Breaking changes
- Vector and bounds projections now use explicit XY/XZ names such as
ToVector2dXY,ToVector3dXZ, andToFixedBoundAreaXZ. - Transform factory methods now use
CreateTransform*; removed 3×3 rotation-scale transform helpers are replaced byFixedTransformcomponents or strictFixed4x4application. - Fixed-to-Unity rays and matrix/transform application now reject non-unit directions, shear, perspective, singular matrices, and unrepresentable hierarchy conversions instead of silently normalizing or partially mutating state.
- Matrix conversions now transpose elements to preserve transform semantics. Audit code that depended on the previous direct-copy layout.
- FixedMathSharp 7.0.0 contains additional core breaking changes; review the migration guide before upgrading.
Upgrade resources
Full Changelog: v6.0.0...v7.0.0