Skip to content

Releases: microsoft/DirectXMath

April 2025

04 Apr 07:22
56206b1
Compare
Choose a tag to compare
  • XM_DEPRECATED macro uses C++14 [[deprecated]] standard attribute when supported
  • Cmake project updates with build options for XDSP and SHMath

This version is available on NuGet and via vcpkg.

The latest VCPKG port now offers optional features xdsp for the XDSP header and dx11, dx12 for the Spherical Harmonics math library.

October 2024

15 Oct 22:23
0d82178
Compare
Choose a tag to compare

DirectXMath 3.20 release.

  • Fixed close-to-zero bug in the implementation of TriangleTests::Intersects
  • Renamed implementation namespace from DirectX::Internal to DirectX::MathInternal to avoid some conformance issues with other libraries
  • CMake project updates including support for ARM64EC
  • Added GitHub Actions YAML files

This version is available on NuGet and via vcpkg.

Windows SDK (10.0.26100)

14 Feb 23:03
d837578
Compare
Choose a tag to compare

February 2024 (3.19)

  • Fix to address MinGW issue with __cpuid in cpuid.h vs. intrin.h
  • Additional updates for clang/LLVM and GNUC
  • Minor comment updates

Includes fixes from 3.18b

This version is available on NuGet and via vcpkg.

December 2023

01 Jan 04:38
2160408
Compare
Choose a tag to compare

DirectXMath 3.18b release.

  • Hot-fix to address -Wunsafe-buffer-usage warnings from clang v16
  • Hot-fix to address MinGW issue with __cpuid in cpuid.h vs. intrin.h
  • CMake project updates including pkg-config file generation

This version is available on NuGet and via vcpkg.

December 2022

12 Dec 19:33
339c2a8
Compare
Choose a tag to compare

The DirectXMath 3.18 release is included in the Windows SDK (10.0.25262) Preview or later.

  • C++20 spaceship operators for XMFLOAT2, XMFLOAT3, etc. when building with /std:c++20 /Zc:_cplusplus
  • Improved conformance for ARM64 when using /Zc:arm64-aliased-neon-types-
  • Minor code review
  • CMake project updated to require 3.20 or later
  • Added Azure Dev Ops Pipeline YAML files

This version is available on NuGet and via vcpkg.

May 2022

18 May 00:38
Compare
Choose a tag to compare

DirectXMath 3.17 with hot-fixes applied:

  • Hot-fix to address -Wreserved-identifier warnings with clang v13
  • C++20 spaceship operators for XMFLOAT2, XMFLOAT3, etc. when building with /std:c++20 /Zc:__cplusplus
  • Minor CMake project update

This version is available on NuGet and via vcpkg.

Windows SDK (10.0.22621) for Windows 11, Version 22H2

18 Jan 08:21
Compare
Choose a tag to compare

The DirectXMath 3.17 release is included in the Windows SDK (10.0.22621) for Windows 11, Version 22H2 .

  • Added ColorsLinear namespace to DirectXColors.h with linear versions of .NET colors
  • Optimized the XMMatrixRotationRollPitchYaw(FromVector) functions
  • Fixed overread problem for 16bpp GPU types Load functions:
    • XMUNIBBLE4, XMU555, XMU565, XMBYTEN2, XMBYTE2, XMUBYTEN2, XMUBYTE2
  • XM_CACHE_LINE_SIZE updated for ARM/ARM64 targets to 128 bytes
  • A few comments added to improve IntelliSense experience
  • Conformance improvements for GNU compiler
  • Minor code cleanup

See this post.

This version is available on NuGet and via vcpkg.

Windows SDK for Windows 11 (10.0.22000)

11 Jan 06:35
Compare
Choose a tag to compare

DirectXMath 3.16 with hot-fixes applied:

  • Hot-fixes to resolve build breaks for clang/LLVM and GCC on ARM64
  • XM_ALIGNED_DATA and XM_ALIGNED_STRUCT macros updated to use C++17 alignas when available

See this post.

This version is also available on NuGet and via vcpkg.

December 28, 2020

11 Jan 06:46
Compare
Choose a tag to compare

This was a CMake only release of DirectXMath 3.16 for vcpkg to resolve case-sensitivity issues in the CMake package implementation.

Windows 10 SDK (20348), version 2104

19 Dec 21:24
Compare
Choose a tag to compare

DirectXMath 3.16 is included in the Windows 10 SDK (10.0.20348.0), version 2104:

  • Added XMVectorLog10 / XMVectorExp10
  • Added XMColorRGBToYUV_UHD / XMColorYUVToRGB_UHD for Rec. 2020 YUV
  • Added optional rhcoords parameter for BoundingFrustum CreateFromMatrix
  • Added use of Intel® Short Vector Matrix Library (SVML) supported by VS 2019
    • Opt-in with _XM_SVML_INTRINSICS_; opt-out with _XM_DISABLE_INTEL_SVML_
  • Fixed denorm handling for XMConvertFloatToHalf to match F16C/CVT16 instructions.
  • Fixed flush (too small for denorm) handling for XMStoreFloat3PK
  • Fixed clamping bug in XMStoreByteN4
  • Cleaned up ARM-NEON intrinsics type issues for improved portability on GNUC
  • Fixed GXMVECTOR for x86 __vectorcall
  • Code review
  • Plus all changes from 3.15

See this post.

This version is also available on NuGet.