Direct3D12 Agility SDK - Steelhead-Games/CharmQuarkEngine-wiki GitHub Wiki

Overview

The DirectX team decided to supply people with an SDK so developers and players are not dependent on the Windows updates in order to get a newer version of Direct3D.

In our situation, we are not utilizing cutting-edge technologies; however, some players and developers on Windows 10 are experiencing difficulties with the Agility SDK, even though the system contains the Agility SDK and meets the minimum requirements. Currently, we are supporting the first version of Agility SDK just to support SM6.6. (SDK Package: 1.4.10, D3D12SDKVersion: 4).

How to update the Agility SDK

The easiest way to get the Agility SDK is to use these commands (just put the necessary SDK package version)

PS C:\Users\user\Desktop> Invoke-WebRequest -Uri https://www.nuget.org/api/v2/package/Microsoft.Direct3D.D3D12/1.4.10 -OutFile agility.zip
PS C:\Users\user\Desktop> Expand-Archive agility.zip -DestinationPath d3d

Then, get the files D3D12Core.dll and d3d12sdklayers.dll and put them in the Engine/External/D3D12AgilitySDK folder.

Then, go to the Engine/Source/Game/CMakeLists.txt and change the D3D12_AGILITY_SDK_VERSION number to the corresponding SDK version.

If you want to move the DLLs somewhere else or reorganize the Agility SDK storage system

In the Engine/Source/Game/CMakeLists.txt, you also have to modify the D3D12_AGILITY_SDK_PATH definition and change the corresponding add_custom_command for them to set the correct paths.

Useful links

https://devblogs.microsoft.com/directx/gettingstarted-dx12agility/

https://devblogs.microsoft.com/directx/directx12agility/