Releases: redorav/hlslpp
Releases · redorav/hlslpp
3.6
Merry Christmas! 🎄
- Added ldexp
- Add a simple half class and f16tof32/f32tof16 functions
- Add uint and enforce int to be 4 bytes
- Added first collection of data packing functions
- Fix incorrect mapping of _hlslpp_subm_ps to vmlsq_f32 which was causing sin_ps and cos_ps to return incorrect values on ARM
- Enforce alignment on types to avoid platform mismatches
- Fix clang-cl + ARM64 platform combination
3.5.3
3.5.2
3.5.1
3.5
- IMPORTANT: reworked headers to follow a more logical folder structure. Compatibility headers are provided to aid migration so existing code will work as is, they will be removed in future versions! Easy way is to replace "hlsl++_" with "hlsl++/"
- Added WebAssembly intrinsics: most functionality has been tested but there are still some rough edges, it has been tested with the Emscripten Visual Studio Target plugin
- Improve matrix compile times by putting rarely-used swizzles behind define (the hlsl spec defines _mNM and __NM)
- Separate matrix_type and matrix headers to improve compile times for users
- Improve compile times for our custom type_traits
- Fix trunc for the SSE2 double type changing the rounding mode and other shenanigans. The solution is more "by the book"
3.4
- Fixed all unit test warnings. Unit tests now run as part of build
- Added clamp to int and uint
- Fix round, floor and ceil to better conform to hlsl
- Add option to specify reverse z and and infinite far plane when creating perspective matrices
- Add missing vector-matrix multiplication functions
- Add matrix constructors from vectors
- Small performance improvement to SSE permutation intrinsic to avoid computing parameter twice
- Add distance() function
- Add normalize() to doubleN
- Add cross() for doubleN
- Further improve compile times for swizzleN for all types of vectors
3.3.1
3.3
- Add the select() function now that HLSL 2021 has standardized it
- Have separate type headers for vector and quaternion (matrix not implemented yet)
- Further addressed compile times for swizzles and third-party headers
- Disambiguate equality and comparison operators
- Fix quaternion slerp producing nans
- Fix uintN swizzle
- Added uintN to the natvis
- Make division safer in scalar mode
- Fix float1x3 matrix move constructor