Skip to content

Commit

Permalink
June 1, 2020
Browse files Browse the repository at this point in the history
  • Loading branch information
walbourn committed Jun 2, 2020
1 parent ff6c865 commit e989c40
Show file tree
Hide file tree
Showing 4 changed files with 48 additions and 38 deletions.
2 changes: 1 addition & 1 deletion .nuget/directxtk12_desktop_2017.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ SpriteBatch - simple & efficient 2D sprite rendering
SpriteFont - bitmap based text rendering
VertexTypes - structures for commonly used vertex data formats
WICTextureLoader - WIC-based image file texture loader</description>
<releaseNotes>Matches the May 10, 2020 release on GitHub.</releaseNotes>
<releaseNotes>Matches the June 1, 2020 release on GitHub.</releaseNotes>
<projectUrl>http://go.microsoft.com/fwlink/?LinkID=615561</projectUrl>
<icon>images\icon.jpg</icon>
<license type="expression">MIT</license>
Expand Down
2 changes: 1 addition & 1 deletion .nuget/directxtk12_uwp.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ SpriteBatch - simple &amp; efficient 2D sprite rendering
SpriteFont - bitmap based text rendering
VertexTypes - structures for commonly used vertex data formats
WICTextureLoader - WIC-based image file texture loader</description>
<releaseNotes>Matches the May 10, 2020 release on GitHub.</releaseNotes>
<releaseNotes>Matches the June 1, 2020 release on GitHub.</releaseNotes>
<projectUrl>http://go.microsoft.com/fwlink/?LinkID=615561</projectUrl>
<icon>images\icon.jpg</icon>
<license type="expression">MIT</license>
Expand Down
72 changes: 41 additions & 31 deletions HISTORY.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,25 +6,35 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT

## Release History

### June 1, 2020
* Added BufferHelpers header with functions **CreateStaticBuffer** and **CreateTextureFromMemory**
* Added **IsPowerOf2** helper to DirectXHelpers
* SpriteBatch now supports providing a new heap-based sampler on calls to **Begin**
* Converted to typed enum bitmask flags (see release notes for details on this potential *breaking change*)
+ ``AUDIO_ENGINE_FLAGS``, ``DDS_LOADER_FLAGS``, ``ModelLoaderFlags``, ``SOUND_EFFECT_INSTANCE_FLAGS``, and ``WIC_LOADER_FLAGS``
* WICTextureLoader for ``PNG`` codec now checks ``gAMA`` chunk to determine colorspace if the ``sRGB`` chunk is not found for legacy sRGB detection.
* ``WIC_LOADER_SRGB_DEFAULT`` flag added when loading image via WIC without explicit colorspace metadata
* CMake project updates

### May 10, 2020
* [ResourceUploadBatch](https://github.com/microsoft/DirectXTK12/wiki/ResourceUploadBatch#command-queues) updated to support usage with copy & compute queues
* ``Transition`` methods added for GeometricPrimtive and Model for use with static VBs/IBs
* **ResourceUploadBatch** updated to support usage with copy & compute queues
* **Transition** methods added for GeometricPrimtive and Model for use with static VBs/IBs
* WICTextureLoader updated with new loader flags: ``FORCE_RGBA32``, ``FIT_POW2``, and ``MAKE_SQUARE``
* SimpleMath no longer forces use of d3d11.h or d3d12.h (can be used with d3d9.h for example)
* *DirectX Tool Kit for Audio* updated with [SoundStreamInstance](https://github.com/microsoft/DirectXTK/wiki/SoundStreamInstance) class for async I/O playback from XACT-style streaming wavebanks
* *DirectX Tool Kit for Audio* updated with **SoundStreamInstance** class for async I/O playback from XACT-style streaming wavebanks
* Code cleanup
* Updated D3DX12 internal copy to Windows 10 SDK (19041) version

### April 3, 2020
* Updated D3DX12 internal copy to latest version
* SpriteFont MeasureString / MeasureDrawBounds fixes for !ignoreWhitespace
* SpriteFont **MeasureString** / **MeasureDrawBounds** fixes for !ignoreWhitespace
* Regenerated shaders using Windows 10 SDK (19041)
* Upgraded to use root signature 1.1 which requires Windows 10 (14393) or later
* Code review (constexpr / noexcept usage)
* Code review (``constexpr`` / ``noexcept`` usage)
* CMake updated for PCH usage with 3.16 or later

### February 24, 2020
* *breaking change* ``Model::CreateFrom*`` parameter order changed and addded ModelLoaderFlags
* *breaking change* **Model::CreateFromxxx** parameter order changed and added ModelLoaderFlags
* Added ``ignoreWhitespace`` defaulted parameter to SpriteFont Measure methods
* Sync'd DirectX Tool Kit for Audio and GamePad with DX11 version
* Fixed encoding issue with Utilities.fxh
Expand All @@ -34,8 +44,8 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT
### December 17, 2019
* Added ARM64 platform to VS 2019 Win32 desktop Win10 project
* Added Vector ``operator/`` by float scalar to SimpleMath
* Added ``GetStatistics`` method to GraphicsMemory
* Reduced fence object usage in GraphicsMemory's LinearAllocator
* Added **GetStatistics** method to GraphicsMemory
* Reduced fence object usage in GraphicsMemory's **LinearAllocator**
* Updated CMake project
* Code cleaup

Expand All @@ -61,20 +71,20 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT

### April 26, 2019
* Updated auto-generated mipmaps support to make it more robust
* Added optional ``LoadStaticBuffers`` method for GeometricPrimitive
* Added optional **LoadStaticBuffers** method for GeometricPrimitive
* Added VS 2019 desktop projects
* Fixed guards w.r.t. to windows.h usage in Keyboard/Mouse headers
* Added C++/WinRT SetWindow helper to Keyboard/Mouse
* Update HLSL script to use Shader Model 5.1 instead of 5.0
* Code cleanup

### February 7, 2019
* Model now supports loading SDKMESH v2 models
* PBREffectFactory added to support PBR materials
* Model now supports loading ``SDKMESH v2`` models
* **PBREffectFactory** added to support PBR materials
* PBREffect and NormalMapEffect shaders updated to support ``BC5_UNORM`` compressed normal maps
* SpriteFont: DrawString overloads for UTF-8 chars in addition to UTF-16LE wide chars
* SpriteFont: **DrawString** overloads for UTF-8 chars in addition to UTF-16LE wide chars
* Fixed bug with GraphicsMemory dtor introduced with mGPU handling
* Made library agonstic to legacy Windows SDK pix.h vs. latest pix3.h from NuGet
* Made library agnostic to legacy Windows SDK pix.h vs. latest pix3.h from NuGet

### November 16, 2018
* VS 2017 updated for Windows 10 October 2018 Update SDK (17763)
Expand All @@ -85,7 +95,7 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT
* Model loader for SDKMESH now attempts to use legacy DE3CN compressed normals
+ This is an approximation only and emits a warning in debug builds
* IEffectTextureFactory's CreateTexture interface method now returns the 'slot'
+ This is for use with ``GetResource`` method
+ This is for use with **GetResource** method
* Minor code review

### October 25, 2018
Expand All @@ -104,23 +114,23 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT
* Code cleanup

### July 3, 2018
* Model ``LoadStaticBuffers`` method to use static vs. dynamic VB/IB
* Model **LoadStaticBuffers** method to use static vs. dynamic VB/IB
* *breaking change* Custom Model loaders and renderers should be updated for changes to ModelMeshPart
* ModelMeshPart DrawInstanced method added
* ModelMeshPart **DrawInstanced** method added
* Code and project cleanup

### May 31, 2018
* VS 2017 updated for Windows 10 April 2018 Update SDK (17134)
* Regenerated shaders using Windows 10 April 2018 Update SDK (17134)

### May 14, 2018
* EffectPipelineStateDescription updated with GetDesc method
* EffectPipelineStateDescription updated with **GetDesc** method
* Updated for VS 2017 15.7 update warnings
* Code and project cleanup

### April 23, 2018
* ``AlignUp``, ``AlignDown`` template functions in DirectXHelpers.h
* ScopedBarrier added to DirectXHelpers.h
* **AlignUp**, **AlignDown** template functions in DirectXHelpers.h
* **ScopedBarrier** added to DirectXHelpers.h
* Mouse support for cursor visibility
* SimpleMath and VertexTypes updated with default copy and move ctors
* SimpleMath updates to use constexpr
Expand All @@ -134,8 +144,8 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT
* Updated for a few more VS 2017 warnings

### December 13, 2017
* PBREffect and DebugEffect added
* NormalMapEffect no longer requires or uses explicit vertex tangents
* **PBREffect** and **DebugEffect** added
* **NormalMapEffect** no longer requires or uses explicit vertex tangents
* Updated for VS 2017 15.5 update warnings
* Code cleanup

Expand All @@ -147,16 +157,16 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT
### September 22, 2017
* Updated for VS 2017 15.3 update ``/permissive-`` changes
* ScreenGrab updated to use non-sRGB metadata for PNG
* Mouse use of WM_INPUT updated for Remote Desktop scenarios
* Mouse use of ``WM_INPUT`` updated for Remote Desktop scenarios

### July 28, 2017
* Fix for WIC writer when codec target format requires a palette
* Fix for error detection in ResourceUploadBatch::End method
* Code cleanup

### June 21, 2017
* Post-processing support
* Added DescriptorPile utility class
* Post-processing support with the **BasicPostProcess**, **DualPostProcess**, and **ToneMapPostProcess** classes
* Added **DescriptorPile** utility class
* SDKMESH loader fix when loading legacy files with all zero materials
* DirectXTK for Audio: Minor fixes for environmental audio
* Optimized root signatures for Effects shaders
Expand All @@ -177,15 +187,15 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT
### February 10, 2017
* SpriteBatch default rasterizer state now matches DirectX 11 version
* DDSTextureLoader now supports loading planar video format textures
* GamePad now supports special value of -1 for 'most recently connected controller'
* **GamePad** now supports special value of -1 for 'most recently connected controller'
* WIC format 40bppCMYKAlpha should be converted to RGBA8 rather than RGBA16
* DDS support for L8A8 with bitcount 8 rather than 16
* Updated D3DX12 internal copy to latest version
* Minor code cleanup

### December 5, 2016
* Mouse and Keyboard classes updated with IsConnected method
* Windows10 project /ZW switch removed to support use in C++/WinRT projection apps
* Mouse and Keyboard classes updated with **IsConnected** method
* Windows10 project ``/ZW`` switch removed to support use in C++/WinRT projection apps
* VS 2017 RC projects added
* Updated D3DX12 internal copy to latest version
* Minor code cleanup
Expand All @@ -203,12 +213,12 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT
* Minor code cleanup

### September 1, 2016
* EffectPipelineStateDescription is now in it's own header
* **EffectPipelineStateDescription** is now in it's own header
* Additional debug object naming
* Fixed Tier 1 hardware support issues with BasicEffect and generating mipmaps
* Fixed default graphics memory alignment to resolve rendering problems on some hardware
* Added ``forceSRGB`` optional parameter to SpriteFont ctor
* EffectFactory method ``EnableForceSRGB`` added
* EffectFactory method **EnableForceSRGB** added
* Removed problematic ABI::Windows::Foundation::Rect interop for SimpleMath
* Updated D3DX12 internal copy for the Windows 10 Anniversary Update SDK (14393)
* Minor code cleanup
Expand All @@ -234,8 +244,8 @@ Release available for download on [GitHub](https://github.com/microsoft/DirectXT
+ removed unnecesary "one-light" shader permutations
+ fixed bug in AlphaTestEfect implementation
+ improved debug messages for misconfigured effects NormalMapEffect for normal-map with optional specular map rendering
* EnvironmentMapEffect now supports per-pixel lighting
* Effects updated with SetMatrices and SetColorAndAlpha methods
* **EnvironmentMapEffect** now supports per-pixel lighting
* Effects updated with **SetMatrices** and **SetColorAndAlpha** methods
* GraphicsMemory support for SharedGraphicsResource shared_ptr style smart-pointer
* PrimitiveBatch fix for DrawQuad
* ScreenGrab handles resource state transition
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ http://go.microsoft.com/fwlink/?LinkID=615561

Copyright (c) Microsoft Corporation. All rights reserved.

**May 10, 2020**
**June 1, 2020**

This package contains the "DirectX Tool Kit", a collection of helper classes for writing Direct3D 12 C++ code for Universal Windows Platform (UWP) apps, Win32 desktop applications for Windows 10, and Xbox One.

This code is designed to build with Visual Studio 2017 ([15.9](https://walbourn.github.io/vs-2017-15-9-update/)), Visual Studio 2019, or clang for Windows v9. It is recommended that you make use of the Windows 10 May 2019 Update SDK ([18362](https://walbourn.github.io/windows-10-may-2019-update/)).
This code is designed to build with Visual Studio 2017 ([15.9](https://walbourn.github.io/vs-2017-15-9-update/)), Visual Studio 2019, or clang for Windows v9 or later. It is recommended that you make use of the Windows 10 May 2020 Update SDK ([19041](https://walbourn.github.io/windows-10-may-2020-update-sdk/)).

These components are designed to work without requiring any content from the legacy DirectX SDK. For details, see [Where is the DirectX SDK?](https://aka.ms/dxsdk).

Expand Down Expand Up @@ -86,11 +86,11 @@ Developers using the Xbox One XDK need to generate the ``Src\Shaders\Compiled\Xb

## Release Notes

* The VS 2017/2019 projects make use of ``/permissive-`` for improved C++ standard conformance. Use of a Windows 10 SDK prior to the Fall Creators Update (16299) or an Xbox One XDK prior to June 2017 QFE 4 may result in failures due to problems with the system headers. You can work around these by disabling this switch in the project files which is found in the ``<ConformanceMode>`` elements, or in some cases adding ``/Zc:twoPhase-`` to the ``<AdditionalOptions>`` elements.
* Starting with the June 2020 release, this library makes use of typed enum bitmask flags per the recommendation of the _C++ Standard_ section *17.5.2.1.3 Bitmask types*. This may have *breaking change* impacts to client code:

* The VS 2017 projects require the 15.5 update or later. For UWP and Win32 classic desktop projects with the 15.5 - 15.7 updates, you need to install the standalone Windows 10 SDK (17763) which is otherwise included in the 15.8.6 or later update. Older VS 2017 updates will fail to load the projects due to use of the <ConformanceMode> element. If using the 15.5 or 15.6 updates, you will see ``warning D9002: ignoring unknown option '/Zc:__cplusplus'`` because this switch isn't supported until 15.7. It is safe to ignore this warning, or you can edit the project files ``<AdditionalOptions>`` elements.
* You cannot pass the ``0`` literal as your flags value. Instead you must make use of the appropriate default enum value: ``AudioEngine_Default``, ``SoundEffectInstance_Default``, ``ModelLoader_Clockwise``, ``DDS_LOADER_DEFAULT``, or ``WIC_LOADER_DEFAULT``.

* The VS 2019 projects use a ``<WindowsTargetPlatformVersion>`` of ``10.0`` which indicates to use the latest installed version. This should be Windows 10 SDK (17763) or later.
* Use the enum type instead of ``DWORD`` if building up flags values locally with bitmask operations. For example, ```WIC_LOADER_FLAGS flags = WIC_LOADER_DEFAULT; if (...) flags |= WIC_LOADER_FORCE_SRGB;```

* The UWP projects and the VS 2019 Win10 classic desktop project include configurations for the ARM64 platform. These require VS 2017 (15.9 update) or VS 2019 to build, with the ARM64 toolset installed.

Expand Down

0 comments on commit e989c40

Please sign in to comment.