DirectX Developer Blog

The latest news on Microsoft's Graphics and Display technology

Latest posts

Nov 11, 2019
Post comments count 0
Post likes count 0

Coming to DirectX 12: More control over memory allocation

Jesse Natalie

In the next update to Windows, D3D12 will be adding two new flags to the D3D12_HEAP_FLAG enumeration. These new flags are “impermanent” properties, which don’t affect the resulting memory itself, but rather the way in which it’s allocated. This gives app developers more control and flexibility.

Nov 8, 2019
Post comments count 0
Post likes count 2

Coming to DirectX 12— Mesh Shaders and Amplification Shaders: Reinventing the Geometry Pipeline  

Sarah Jobalia

D3D12 is adding two new shader stages: the Mesh Shader and the Amplification Shader. These additions will streamline the rendering pipeline, while simultaneously boosting flexibility and efficiency.  In this new and improved pre-rasterization pipeline, Mesh and Amplification Shaders will optionally replace the section of the pipeline consisting of the Input Assembler as well as Vertex, Geometry, Domain, and Hull Shaders with richer and more general purpose capabilities. This is possible through a reimagination of how geometry is processed.   Topics What does the geometry pipeline look like now? How...

Nov 6, 2019
Post comments count 0
Post likes count 0

DirectX Raytracing (DXR) Tier 1.1

Amar Patel

An overview of features in DXR Tier 1.1.

Nov 4, 2019
Post comments count 0
Post likes count 1

Coming to DirectX 12— Sampler Feedback: some useful once-hidden data, unlocked

Claire Andrews

Why Feedback: A Streaming Scenario Suppose you are shading a complicated 3D scene. The camera moves swiftly throughout the scene, causing some objects to be moved into different levels of detail. Since you need to aggressively optimize for memory, you bind resources to cope with the demand for different LODs. Perhaps you use a texture streaming system; perhaps it uses tiled resources to keep those gigantic 4K mip 0s non-resident if you don’t need them. Anyway, you have a shader which samples a mipped texture using A Very Complicated sampling pattern. Pick your favorite one, say anisotropic. The sampling in th...

Oct 28, 2019
Post comments count 1
Post likes count 0

Dev Preview of New DirectX 12 Features

Jianye Lu

In this blog post, we will preview a suite of new DirectX 12 features, including DirectX Raytracing tier 1.1, Mesh Shader, and Sampler Feedback. All these features are currently available in Windows 10 Insider Preview Builds (20H1).

Oct 22, 2019
Post comments count 0
Post likes count 0

A Look Inside D3D12 Resource State Barriers

Bill Kristiansen

Many D3D12 developers have become accustomed to managing resource state transitions and read/write hazards themselves using the ResourceBarrier API. Prior to D3D12, such details were handled internally by the driver.  However, D3D12 command lists cannot provide the same deterministic state tracking as D3D10 and D3D11 device contexts.  Therefore, state transitions need to be scheduled during D3D12 command list recording. When used responsibly, applications are able to minimize GPU cache flushes and resource state changes. However, it can be tricky to properly leverage resource barriers for correct behavior while a...

Sep 11, 2019
Post comments count 0
Post likes count 0

DRED v1.2 supports PIX marker and event strings in Auto-Breadcrumbs

Bill Kristiansen

In Windows 10 1903, DRED 1.1 provided D3D12 developers with the ability to diagnose device removed events using GPU page fault data and automatic breadcrumbs. As a result, TDR debugging pain has been greatly reduced.  Hooray!  Unfortunately, developers still struggle to pinpoint which specific GPU workloads triggered the error.  So, we've made a few tweaks in DRED in the Windows 10 20H1 Release Preview.  Specifically, DRED 1.2 adds 'Context Data' to auto-breadcrumbs by integrating PIX marker and event strings into the auto-breadcrumb data.  With context data, developers can more precisely determine where a GPU fa...

Aug 30, 2019
Post comments count 1
Post likes count 0

D3DConfig: A new tool to manage DirectX Control Panel settings

Bill Kristiansen

The DirectX Control Panel (DXCpl.exe) has dutifully given developers the ability to configure Direct3D debug settings for nearly two decades.  But what started as a simple utility for controlling D3D debug output and driver type selection has struggled to keep up with modern DX12 debugging options.  In addition, the UI-based DXCpl doesn’t integrate into automation scripts, nor is it useful on scaled-down Windows platforms that do not support Win32-based user interfaces. What we need is a command line tool Introducing D3DConfig.exe in, a console app compatible with DXCpl.  The D3DConfig tool can display and modi...

Aug 21, 2019
Post comments count 4
Post likes count 1

Porting DirectX 12 games to Windows 7

Jianye Lu

We publish documents, header files, binaries, and samples to allow game developers to run their DirectX 12 games on Windows 7.