Skip to content

Commit

Permalink
Merge pull request #671 from microsoft/UpdateDX12UltimateSampleLinks
Browse files Browse the repository at this point in the history
Update readme for DX12U samples
  • Loading branch information
sebmerry authored Nov 12, 2020
2 parents b8334cc + 3a3d47c commit 158b9a4
Show file tree
Hide file tree
Showing 8 changed files with 34 additions and 28 deletions.
Binary file added Assets/DirectX12Ultimate.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
24 changes: 15 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,24 @@

# DirectX-Graphics-Samples
This repo contains the DirectX 12 Graphics samples that demonstrate how to build graphics intensive applications for Windows 10. We invite you to join us at our [discord server](http://discord.gg/directx). See our [YouTube channel](https://www.youtube.com/MicrosoftDirectX12andGraphicsEducation) for tutorials, our [spec repo](https://microsoft.github.io/DirectX-Specs/) for engineering specs of our features and [devblogs](https://devblogs.microsoft.com/directx/) for blog posts. Follow us on Twitter [@DirectX12](https://twitter.com/directx12) for the latest! See the Related Links section for our full list of DX12-related links.
This repo contains the DirectX 12 Graphics samples that demonstrate how to build graphics intensive applications for Windows 10.

We invite you to join us at our [discord server](http://discord.gg/directx). See our [YouTube channel](https://www.youtube.com/MicrosoftDirectX12andGraphicsEducation) for tutorials, our [spec repo](https://microsoft.github.io/DirectX-Specs/) for engineering specs of our features and [devblogs](https://devblogs.microsoft.com/directx/) for blog posts. Follow us on Twitter [@DirectX12](https://twitter.com/directx12) for the latest! See the [related links](##-Related-links) section for our full list of DX12-related links.

## API Samples
In the Samples directory, you will find samples that attempt to break off specific features and specific usage scenarios into bite-sized chunks. For example, the ExecuteIndirect sample will show you just enough about execute indirect to get started with that feature without diving too deep into multiengine whereas the nBodyGravity sample will delve into multiengine without touching on the execute indirect feature etc. By doing this, we hope to make it easier to get started with DirectX 12.

Recent API Sample Updates:
### DirectX 12 Ultimate samples
1. [D3D12 Mesh Shaders](Samples/Desktop/D3D12MeshShaders/readme.md): This sample demonstrates how Mesh shaders can be used to increase the flexibility and performance of the geometry pipeline.

<img src="Samples/Desktop/D3D12MeshShaders/src/MeshletRender/Screenshot_DX12U.png" alt="D3D12 Meshlet Render preview" height="200">

![D3D12 Meshlet Render Preview](Samples/Desktop/D3D12MeshShaders/src/MeshletRender/D3D12MeshletRender.png)

2. [D3D12 Variable Rate Shading](Samples/Desktop/D3D12VariableRateShading/readme.md): This sample demonstrates how shading rate can be reduced with little or no reduction in visual quality, leading to “free” performance.
1. [D3D12 Variable Rate Shading](Samples/Desktop/D3D12VariableRateShading/readme.md): This sample demonstrates how shading rate can be reduced with little or no reduction in visual quality, leading to “free” performance.
<img src="Samples/Desktop/D3D12VariableRateShading/src/Screenshot_DX12U.png" alt="D3D12 Variable Rate Shading GUI" height="200">

![Variable Rate Shading GUI](Samples/Desktop/D3D12VariableRateShading/src/Screenshot_small.png)
1. [D3D12 Raytracing](Samples/Desktop/D3D12Raytracing/readme.md): This sample demonstrates how DirectX Raytracing (DXR) brings a new level of graphics realism to video games, previously only achievable in the movie industry.

<img src="Samples/Desktop/D3D12Raytracing/src/D3D12RaytracingRealTimeDenoisedAmbientOcclusion/Screenshot_DX12U.png" alt="D3D12 Raytracing Real-Time Denoised Ambient Occlusion preview" height="200">

## MiniEngine: A DirectX 12 Engine Starter Kit
In addition to the samples, we are announcing the first DirectX 12 preview release of the MiniEngine.
Expand All @@ -34,9 +40,10 @@ It came from a desire to quickly dive into graphics and performance experiments.
* Easy-to-use dynamic constant buffers and descriptor tables

## Requirements
Some samples require support for DirectX 12 Ultimate, see [this](http://aka.ms/DirectX12UltimateDev) post for details.
### Master branch
This branch is intended for the latest [released](https://docs.microsoft.com/en-us/windows/release-information/) Windows 10 version.
* Windows 10 version 20H2
* Windows 10 version 2004 (no new features were added in version 20H2)
* [Visual Studio 2019](https://www.visualstudio.com/) with the [Windows 10 SDK version 2004(19041)](https://developer.microsoft.com/en-US/windows/downloads/windows-10-sdk)
### Develop branch
This branch is intented for features available in the latest Windows Insider Preview
Expand All @@ -46,13 +53,12 @@ This branch is intented for features available in the latest Windows Insider Pre
## Contributing
We're always looking for your help to fix bugs and improve the samples. File those pull requests and we'll be happy to take a look.

Find more information on DirectX 12 on our blog: https://devblogs.microsoft.com/directx/

Troubleshooting information for this repository can be found in the site [Wiki](https://github.com/Microsoft/DirectX-Graphics-Samples/wiki).

This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [[email protected]](mailto:[email protected]) with any additional questions or comments.

## Related links
* [DirectX Developer Blog](https://devblogs.microsoft.com/directx)
* [DirectX API documentation](https://docs.microsoft.com/en-us/windows/win32/directx)
* [PIX on Windows](https://devblogs.microsoft.com/pix/documentation/)
* [D3DX12 (the D3D12 Helper Library)](https://github.com/Microsoft/DirectX-Graphics-Samples/tree/master/Libraries/D3DX12)
Expand Down
12 changes: 5 additions & 7 deletions Samples/Desktop/D3D12MeshShaders/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ extendedZipContent:
# Direct3D 12 mesh shader samples
This collection of projects act as an introduction to meshlets, and rendering with DirectX mesh shaders.

### Requirements
* GPU and driver with support for [DirectX 12 Ultimate](http://aka.ms/DirectX12UltimateDev)

<img src="../../../Assets/DirectX12Ultimate.png" alt="DirectX 12 Ultimate" height="100">

### Getting Started
* DirectX Mesh Shader spec/documentation is available at [DirectX Mesh Shader Specs](https://microsoft.github.io/DirectX-Specs/d3d/MeshShader.html) site.

Expand Down Expand Up @@ -42,13 +47,6 @@ This sample presents an advanced shader technique using amplification shaders to

![D3D12 Dynamic LOD Preview](src/DynamicLOD/D3D12DynamicLOD.png)

## Requirements
* [Visual Studio 2019](https://www.visualstudio.com/).
* [Windows SDK Insider Preview](https://www.microsoft.com//software-download/windowsinsiderpreviewSDK).
* Windows 10 Insider Preview
* Windows SDK 19041
* DirectX 12 GPU with compatible drivers - [NVIDIA RTX](https://developer.nvidia.com/directx)

## Further resources
* [DirectX Mesh Shader Spec](https://microsoft.github.io/DirectX-Specs/d3d/MeshShader.html)
* [DirectXMesh Repository](https://github.com/microsoft/DirectXMesh)
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
13 changes: 5 additions & 8 deletions Samples/Desktop/D3D12Raytracing/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ extendedZipContent:
# Direct3D 12 raytracing samples
This collection of samples act as an introduction to DirectX Raytracing (DXR). The samples are divided into tutorials and advanced samples. Each tutorial sample introduces a few new DXR concepts. Advanced samples demonstrate more complex techniques and applications of raytracing.

### Requirements
* GPU and driver with support for [DirectX 12 Ultimate](http://aka.ms/DirectX12UltimateDev)

<img src="../../../Assets/DirectX12Ultimate.png" alt="DirectX 12 Ultimate" height="100">

### Getting Started
* DXR spec/documentation is available at [DirectX Specs site](https://microsoft.github.io/DirectX-Specs/d3d/Raytracing.html).

Expand All @@ -41,7 +46,6 @@ This sample demonstrates how to implement procedural geometry using intersection

![D3D12 Raytracing Procedural Geometry GUI](src/D3D12RaytracingProceduralGeometry/Screenshot_small.png)


## 4. [Library Subobjects Sample](src/D3D12RaytracingLibrarySubobjects/readme.md)
This sample modifies the Simple Lighting sample, and illustrates how to use library subobjects.

Expand All @@ -59,13 +63,6 @@ This sample demonstrates integration of the DirectX Raytracing in the MiniEngine

![D3D12 Raytracing Mini Engine](src/D3D12RaytracingMiniEngineSample/Screenshot_small.png)

## Requirements
* [Visual Studio 2019](https://www.visualstudio.com/).
* [Windows 10 May 2019 (18362) SDK](https://developer.microsoft.com/en-US/windows/downloads/windows-10-sdk).
* Windows 10 with the May 2019 update.
* Dx12 GPU with a compatible DirectX Raytracing driver.
* Nvidia: driver version 415 or higher.
* Other vendors - please consult the vendor you’re working with for HW and driver availability.

## Further resources
* [Nvidia's DXR samples Github](https://github.com/NVIDIAGameWorks/DxrTutorials)
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
13 changes: 9 additions & 4 deletions Samples/Desktop/D3D12VariableRateShading/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,16 @@ extendedZipContent:
---

# Direct3D 12 variable-rate shading sample
This sample illustrates how to use variable-rate shading (VRS) to improve application performance. VRS adds the concept of subsampling, where shading can be computed at a level coarser than a pixel. For example, a group of pixels can be shaded as a single unit, and the result is then broadcast to all samples in the group. This is great for areas of the image where extra detail doesn't help&mdash;such as those behind HUD elements, transparencies, blurs (depth-of-field, motion, etc.), and optical distortions due to VR optics.

![Variable Rate Shading GUI](src/Screenshot.PNG)

This sample illustrates how to use variable-rate shading (VRS) to improve application performance. VRS adds the concept of subsampling, where shading can be computed at a level coarser than a pixel. For example, a group of pixels can be shaded as a single unit, and the result is then broadcast to all samples in the group. This is great for areas of the image where extra detail doesn't help&mdash;such as those behind HUD elements, transparencies, blurs (depth-of-field, motion, etc.), and optical distortions due to VR optics.
### Requirements
* GPU and driver with support for [DirectX 12 Ultimate](http://aka.ms/DirectX12UltimateDev)

#### Recommended scenarios to try
Hit SPACE to stop the light animating and then use the [F1-F5] keys to toggle between presets for Shading Rates. Can you spot the visual difference between F1 and F2? Try experimenting with the various controls to find an acceptable balance between degraded-visuals and performance.
<img src="../../../Assets/DirectX12Ultimate.png" alt="DirectX 12 Ultimate" height="100">

### Controls
## Controls
* SPACE: Toggles light animation.
* ALT + ENTER: Toggles between windowed and fullscreen modes.
* [+/-]: Increments/decrements the glass refraction scale.
Expand All @@ -30,3 +32,6 @@ Hit SPACE to stop the light animating and then use the [F1-F5] keys to toggle be
* [1-7]: Selects Shading Rate for the Refraction pass.
* SHIFT + [1-7]: Selects the Shading Rate for the Scene pass.
* CTRL + [1-7]: Selects the Shading Rate for the Postprocess pass.

## Recommended scenarios to try
Hit SPACE to stop the light animating and then use the [F1-F5] keys to toggle between presets for Shading Rates. Can you spot the visual difference between F1 and F2? Try experimenting with the various controls to find an acceptable balance between degraded-visuals and performance.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 158b9a4

Please sign in to comment.