Releases: microsoft/DirectXMath
Windows 10 Fall Creators Update SDK (16299)
DirectXMath 3.11 is included in the Windows 10 Fall Creators Update SDK (16299) as well as the Windows 10 April 2018 Update SDK (17134).
- AVX optimization of
XMMatrixMultiply
andXMMatrixMultiplyTranspose
- AVX2 optimization for
XMVectorSplatX
- FMA3 optimization of
XMVectorMultiplyAdd
andXMVectorNegativeMultiplySubtract
(implied by/arch:AVX2
) - Conformance fixes to support compilation with Clang 3.7
See this post.
This version is also available on NuGet.
Windows 10 Fall Creators Update SDK Preview
For BUILD 2017, a preview build of the next Windows 10 SDK 16190 included the following minor changes to DirectXMath:
- Minor update to fix
__m128
compatibility issues with non-Microsoft compilers (i.e. clang)
Windows 10 Creators Update SDK (15063)
DirectXMath 3.10 is included with the Windows 10 Creators Update SDK (15063) that comes with the VS 2017 (15.1 update)
- Added
XMVectorSum
for horizontal adds - ARMv8 intrinsics use for ARM64 platform (division, rounding, half-precision conversion)
- Added SSE3 codepaths using opt-in
_XM_SSE3_INTRINSICS_
XMVectorRound
fix for no-intrinsics to match round-to-nearest (even)XMStoreFloat3SE
fix when max channel isn't a perfect power of 2constexpr
conformance fix and workaround for compiler bug in VS 2015 RTM- Remove support for VS 2012 compilers
- Remove
__vector4i
deprecated type
See this post
This version is also available on NuGet.
Windows 10 Creators Update SDK Preview
Windows 10 Anniversary Update SDK (14393)
DirectXMath 3.09 released in the Windows 10 Anniversary Update SDK (14393) and is included in Visual Studio 2015 Update 3 with Windows Tools 1.4.1.
- Includes support for additional optimizations when built with
/arch:AVX
or/arch:AVX2
- Added use of constexpr for type constructors,
XMConvertToRadians
, andXMConvertToDegrees
- Marked
__vector4i
,XMXDEC4
,XMDECN4
,XMDEC4
, and associated Load & Store functions as deprecated.- These are vestiges of Xbox 360 support and will be removed in a future release.
- Renamed parameter in
XMMatrixPerspectiveFov*
to reduce user confusion when relying on IntelliSense XMU565
,XMUNIBBLE4
constructors takeuint8_t
instead ofint8_t
See this post.
This version is also available on NuGet.
Windows SDK for Windows 8.1
DirectXMath 3.06 shipped in Visual Studio 2013 RTM
- Fixed load/store of
XMFLOAT3SE
to properly match theDXGI_FORMAT_R9G9B9E5_SHAREDEXP
- Added
XMLoadUDecN4_XR
andXMStoreUDecN4_XR
to matchDXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
- Added
XMColorRGBToSRGB
andXMColorSRGBToRGB
to convert linear RGB <-> sRGB
See this post, as well as this post for known issues.
This version is also available on NuGet
Windows 10 SDK November 2015 update (10586)
DirectXMath 3.08 released in Visual Studio 2015 Update 1 with Windows Tools 1.2.
- Added use of
_mm_sfence
for Stream methods - Fixed bug with non-uniform scaling transforms for BoundingOrientedBox
- Added asserts for Near/FarZ in
XMMatrix*
methods - Added use of =default for PODs with VS 2013/2015
- Additional SSE and ARM-NEON optimizations for PackedVector functions
See this post.
This version is also available on NuGet.
May 2016
March 2013
DirectXMath 3.04
XMVectorExp2
,XMVectorLog2
,XMVectorExpE
, andXMVectorLogE
functions added to provide base-e support in addition to the existing base-2 supportXMVectorExp
andXMVectorLog
are now aliases forXMVectorExp2
andXMVectorLog2
- Additional optimizations for Stream functions
XMVector3Cross
now ensures w component is zero on ARMXMConvertHalfToFloat
andXMConvertFloatToHalf
now use IEEE 754 standard float16 behavior for INF/QNAN- Updated matrix version Transform for
BoundingOrientedBox
andBoundingFrustum
to handle scaling
Windows SDK for Windows 8
DirectXMath 3.03 shipping for Visual Studio 2012
- Breaking change: Removed union members from
XMMATRIX
type to make it a fully 'opaque' type - Marked single-parameter C++ constructors for
XMFLOAT2
,XMFLOAT2A
,XMFLOAT3
,XMFLOAT3A
,XMFLOAT4
, andXMFLOAT4A
explicit
See this post, and this post for known issues.
This version is also available on NuGet.