Wolfgang Engel is the CTO/CEO & Co-Founder of Confetti Special Effects Inc., a think-tank for advanced real-time graphics research for the video game and movie industry. Previously he worked for more than four years in Rockstar's core technology group as the lead graphics programmer. His game credits can be found at http://www.mobygames.com/developer/sheet/view/developerId,158706/. He is the editor of the ShaderX and GPU Pro books, the author of several other books and speaks on graphics programming on conferences world-wide. He is a MVP DirectX since July 2006 and active in several advisory boards in the industry. He also teaches at UCSD the class “GPU Programming”. You can find him on twitter at wolfgangengel Confetti's website is www.conffx.com
Posts by Wolfgang Engel
  1. AltDevConf Programming – Mike Acton ( Counting comments... )
  2. AltDevConf - A Conference for Game Developers ( Counting comments... )
  3. Graphics Demo Programming ( Counting comments... )
  4. DirectX 11.1 ( Counting comments... )
  5. Programming the XPERIA Play GPU by Wolfgang Engel and Maurice Ribble ( Counting comments... )
  6. Even Error-Distribution: Rules for Designing Graphics Sub-Systems (Part III) ( Counting comments... )
  7. No Look-up Tables: Rules for Designing Graphics Sub-systems (Part II) ( Counting comments... )
  8. Screen-Space: Rules for Designing Graphics Sub-systems (Part I) ( Counting comments... )
  9. Points, Vertices and Vectors ( Counting comments... )
  10. Thoughts on the Interview Process in the Game Industry ( Counting comments... )
  11. Thoughts on the knowledge of an up-to-date Graphics Programmer ( Counting comments... )
  12. Shadows - Thoughts on Ellipsoid Light Shadow Rendering ( Counting comments... )
Technology/ Code /

I plan to update this blog in the next couple of days with more information as soon as it becomes available.

The upgrade from DirectX 11 to DirectX 11.1 is targeting the following areas:

  • Enabling Metro-style applications (there’s some additional access control for this which impacted almost every API in the OS so there’s no Direct3D 9 in Metro-style, but Direct3D 11.x is fully supported)
  • Technical computing (optional extended double-precision instructions (division, etc.) and optional Sum of Absolute Differences instruction; enabling hardware access via Direct3D from session 0; HLSL compiler improvements)
  • Low-power device optimizations (reduced shader precision hints for HLSL/driver, Tiled Graphics Rendering optimizations, 4 bit-per-pixel DXGI formats 565, 5551, 4444)
  • Various graphics stack unification efforts (Direct3D 11 Video, Direct3D interop improvements for Direct2D & Media Foundation, etc.)
  • Windows on ARM

The main new feature targeting consumers is stereoscopic rendering.

The new DirectX 11.1 features are described on the MSDN website.
For me the most remarkable things on this page are:
1. Use UAV's at every Pipeline stage
2. Use logical operations in a render target
3. Shader tracing: looks like a new way to measure shader performance

The functions (ID3D11Device::CheckFeatureSupport / ID3D11Device::CheckFormatSupport) that check for supported features and formats were extended as well.

D3D11_FEATURE_DATA_ARCHITECTURE_INFO seems to be for tiled-based rendering hardware commonly used in mobile GPUs and D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT too.

DXGI_FORMAT was extended to support video formats that now can be processed with shaders by using resource views (SRV/RTV/UAV).

There is a new D3D_FEATURE_LEVEL_11_1 defined (i.e. a minor revision of the hardware feature set), but I don’t (yet) have a good link to give you to summarize the required features. Of course, there’s no public drivers or hardware out yet that exposes FL 11.1 anyhow. As before, DirectX 11.1 (the API) works with a range of Feature Levels (the hardware).

WARP on Windows 8 supports FL 11.0 (and 10.1 as before) and includes support for the DXGI 1.2 16bpp formats (565, 5551, 4444).

The Windows 8 Developer Preview SDK includes the latest HLSL compiler FXC tool and D3DCompiler.DLL, the Debug Layers DLL, and the REF device DLL for DirectX 11.1 on Windows 8.

The MSDN documentation now includes details on SM 4.x and SM 5.0 shader assembly (for deciphering the compiler’s disassembly output) plus details on BC6H/BC7 compression formats

<http://msdn.microsoft.com/en-us/library/bb943998(v=VS.85).aspx>
<http://msdn.microsoft.com/en-us/library/hh447232(v=VS.85).aspx>
<http://msdn.microsoft.com/en-us/library/hh308955(v=VS.85).aspx>

What is different from DirectX 11 on PC

  • D3DX9, D3DX10, D3DX11 are not supported for Metro-style applications.
  • The Texconv sample includes the "DirectXTex" library which has all the texture processing functionality, WIC-based IO, DDS codec, BC software compression/decompression, etc. as shared source that was in D3DX11.
  • D3DCSX_44.DLL is in the Windows SDK for redist with applications, and I believe is supported in Metro style applications.
  • D3DCompiler_44.DLL is available for REDIST with Desktop applications and for development, but is not supported for REDIST in Metro-style applications. We've long recommended not doing run-time compliation, and Metro style enforces this at deployment time.
  • XINPUT1_4.DLL and XAUDIO2_8.DLL are included in the OS and are fully supported for Metro style applications.

Here are reference links:

Outlines all the new features: http://msdn.microsoft.com/en-us/library/windows/desktop/hh404457.aspx

DirectX 11.1 Features
<http://msdn.microsoft.com/en-us/library/hh404562(v=VS.85).aspx>

DXGI 1.2
<http://msdn.microsoft.com/en-us/library/hh404490(v=VS.85).aspx>

WDDM 1.2
<http://go.microsoft.com/fwlink/?LinkId=226814>