- AMD is planning to enable DirectX 11.2 with a driver update in the Windows® 8.1 launch timeframe in October, when DirectX® 11.2 ships. Today, AMD is the only GPU manufacturer to offer fully-compatible DirectX 11.1 support, and the only manufacturer to support Tiled Resources Tier-2 within a shipping product stack.”.
- The Microsoft DirectX® End-User Runtime installs a number of runtime libraries from the legacy DirectX SDK for some games that use D3DX9, D3DX10, D3DX11, XAudio 2.7, XInput 1.3, XACT, and/or Managed DirectX 1.1. Note that this package does not modify the DirectX Runtime installed on your Windows OS in any way.
- You run a DirectX 11 game on a computer that is running Windows 8.1 or Windows Server 2012 R2. If you run the game in full-screen mode in a non-native resolution, you.
Hi, - What is the make and model of the computer? Yes, Windows 8.1 introduces DirectX 11.2, which brings a host of new features to improve performance in your games and graphics apps. To get this, you may have to download the latest graphics card drivers from the graphics manufacturer or computer manufacturer website.
The following functionality has been added in Direct3D 11.2, which is included with Windows 8.1, Windows RT 8.1, and Windows Server 2012 R2.
- Tiled resources
- HLSL shader linking
Direct3D 11.2 lets you create tiled resources that can be thought of as large logical resources that use small amounts of physical memory. Tiled resources are useful (for example) with terrain in games, and app UI.
Tiled resources are created by specifying the D3D11_RESOURCE_MISC_TILED flag. To work with tiled resource, use these API:
- D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION flag with ID3D11Debug::SetFeatureMask
For more info about tiled resources, see Tiled resources.
Check tiled resources support
Before you use tiled resources, you need to find out if the device supports tiled resources. Here's how you check for support for tiled resources:
Extended support for WARP devices
Direct3D 11.2 extends support for WARP devices, which you create by passing D3D_DRIVER_TYPE_WARP in the DriverType parameter of D3D11CreateDevice. The WARP software renderer in Direct3D 11.2 adds full support for Direct3D feature level 11_1, including tiled resources, IDXGIDevice3::Trim, shared BCn surfaces, minblend, and map default. Double support in HLSL shaders has also been enabled along with support for 16x MSAA.
Annotate graphics commands
Direct3D 11.2 lets you annotate graphics commands with these API:
HLSL shader linking
Windows 8.1 adds separate compilation and linking of HLSL shaders, which allows graphics programmers to create precompiled HLSL functions, package them into libraries, and link them into full shaders at run-time. This is essentially an equivalent of C/C++ separate compilation, libraries, and linking, and it allows programmers to compose precompiled HLSL code when more information becomes available to finalize the computation. For more info about how to use shader linking, see Using shader linking.
Complete these steps to create a final shader using dynamic linkage at run time.
To create and use shader linking
- Create a ID3D11Linker linker object, which represents a linking context. A single context can't be used to produce multiple shaders; a linking context is used to produce a single shader and then the linking context is thrown away.
- Use D3DLoadModule to load and set libraries from their library blobs.
- Use D3DLoadModule to load and set an entry shader blob, or create an FLG shader.
- Use ID3D11Module::CreateInstance to create ID3D11ModuleInstance objects, then call functions on these objects to rebind resources to their final slots.
- Add the libraries to the linker, then call ID3D11Linker::Link to produce final shader byte code that can then be loaded and used in the runtime just like a fully precompiled and linked shader.
Function linking graph (FLG)
Windows 8.1 also adds the Function Linking Graph (FLG). You can use FLG to construct shaders that consist of a sequence of precompiled function invocations that pass values to each other. When using the FLG, there is no need to write HLSL and invoke the HLSL compiler. Instead, the shader structure is specified programmatically using C++ API calls. FLG nodes represent input and output signatures and invocations of precompiled library functions. The order of registering the function-call nodes defines the sequence of invocations. The input signature node must be specified first, while the output signature node must be specified last. FLG edges define how values are passed from one node to another. The data types of passed values must be the same; there is no implicit type conversion. Shape and swizzling rules follow the HLSL behavior and values can only be passed forward in this sequence. For info on the FLG API, see ID3D11FunctionLinkingGraph.
Directx Version 2
Inbox HLSL compiler
The HLSL compiler is now inbox on Windows 8.1 and later. Now, most APIs for shader programming can be used in Windows Store apps that are built for Windows 8.1 and later. Many APIs for shader programming couldn't be used in Windows Store apps that were built for Windows 8; the reference pages for these APIs were marked with a note. But some shader APIs (for example, D3DCompileFromFile) can still only be used to develop Windows Store apps, and not in apps that you submit to the Windows Store; the reference pages for these APIs are still marked with a note.