Skip to content

Commit 278d789

Browse files
authored
Merge pull request #945 from copritch/user/copritch/sm6
Update DirectX Graphics Samples to Shader Model 6.0
2 parents 68907e3 + 1e406f6 commit 278d789

106 files changed

Lines changed: 1129 additions & 878 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Samples/Desktop/D3D12Bundles/src/D3D12Bundles.vcxproj

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Import Project="packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.props" Condition="Exists('packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.props')" />
34
<Import Project="packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.props" Condition="Exists('packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.props')" />
45
<ItemGroup Label="ProjectConfigurations">
56
<ProjectConfiguration Include="Debug|x64">
@@ -133,33 +134,30 @@
133134
</ClCompile>
134135
</ItemGroup>
135136
<ItemGroup>
136-
<FxCompile Include="shader_mesh_alt_pixel.hlsl">
137-
<EntryPointName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">PSMain</EntryPointName>
138-
<EntryPointName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">PSMain</EntryPointName>
139-
<ShaderModel Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">5.0</ShaderModel>
140-
<ShaderModel Condition="'$(Configuration)|$(Platform)'=='Release|x64'">5.0</ShaderModel>
141-
<ShaderType Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Pixel</ShaderType>
142-
<ShaderType Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Pixel</ShaderType>
143-
</FxCompile>
144-
<FxCompile Include="shader_mesh_simple_pixel.hlsl">
145-
<EntryPointName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">PSMain</EntryPointName>
146-
<EntryPointName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">PSMain</EntryPointName>
147-
<ShaderModel Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">5.0</ShaderModel>
148-
<ShaderModel Condition="'$(Configuration)|$(Platform)'=='Release|x64'">5.0</ShaderModel>
149-
<ShaderType Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Pixel</ShaderType>
150-
<ShaderType Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Pixel</ShaderType>
151-
<DeploymentContent>true</DeploymentContent>
152-
</FxCompile>
153-
<FxCompile Include="shader_mesh_simple_vert.hlsl">
154-
<EntryPointName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">VSMain</EntryPointName>
155-
<EntryPointName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">VSMain</EntryPointName>
156-
<ShaderModel Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">5.0</ShaderModel>
157-
<ShaderModel Condition="'$(Configuration)|$(Platform)'=='Release|x64'">5.0</ShaderModel>
158-
<ShaderType Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Vertex</ShaderType>
159-
<ShaderType Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Vertex</ShaderType>
160-
<DeploymentContent>true</DeploymentContent>
161-
<FileType>Document</FileType>
162-
</FxCompile>
137+
<CustomBuild Include="shader_mesh_alt_pixel.hlsl">
138+
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">dxc.exe -nologo -Tps_6_0 -E"PSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename).cso" "%(FullPath)"</Command>
139+
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(Identity)</Message>
140+
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(OutDir)%(Filename).cso</Outputs>
141+
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">dxc.exe -nologo -Tps_6_0 -E"PSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename).cso" "%(FullPath)"</Command>
142+
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(Identity)</Message>
143+
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename).cso</Outputs>
144+
</CustomBuild>
145+
<CustomBuild Include="shader_mesh_simple_pixel.hlsl">
146+
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">dxc.exe -nologo -Tps_6_0 -E"PSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename).cso" "%(FullPath)"</Command>
147+
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(Identity)</Message>
148+
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(OutDir)%(Filename).cso</Outputs>
149+
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">dxc.exe -nologo -Tps_6_0 -E"PSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename).cso" "%(FullPath)"</Command>
150+
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(Identity)</Message>
151+
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename).cso</Outputs>
152+
</CustomBuild>
153+
<CustomBuild Include="shader_mesh_simple_vert.hlsl">
154+
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">dxc.exe -nologo -Tvs_6_0 -E"VSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename).cso" "%(FullPath)"</Command>
155+
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(Identity)</Message>
156+
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(OutDir)%(Filename).cso</Outputs>
157+
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">dxc.exe -nologo -Tvs_6_0 -E"VSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename).cso" "%(FullPath)"</Command>
158+
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(Identity)</Message>
159+
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename).cso</Outputs>
160+
</CustomBuild>
163161
</ItemGroup>
164162
<ItemGroup>
165163
<CustomBuild Include="occcity.bin">
@@ -174,6 +172,7 @@
174172
<ImportGroup Label="ExtensionTargets">
175173
<Import Project="packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.targets" Condition="Exists('packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.targets')" />
176174
<Import Project="packages\WinPixEventRuntime.1.0.240308001\build\WinPixEventRuntime.targets" Condition="Exists('packages\WinPixEventRuntime.1.0.240308001\build\WinPixEventRuntime.targets')" />
175+
<Import Project="packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.targets" Condition="Exists('packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.targets')" />
177176
</ImportGroup>
178177
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
179178
<PropertyGroup>
@@ -182,5 +181,7 @@
182181
<Error Condition="!Exists('packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.props')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.props'))" />
183182
<Error Condition="!Exists('packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.targets'))" />
184183
<Error Condition="!Exists('packages\WinPixEventRuntime.1.0.240308001\build\WinPixEventRuntime.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\WinPixEventRuntime.1.0.240308001\build\WinPixEventRuntime.targets'))" />
184+
<Error Condition="!Exists('packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.props')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.props'))" />
185+
<Error Condition="!Exists('packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.targets'))" />
185186
</Target>
186187
</Project>

Samples/Desktop/D3D12Bundles/src/D3D12Bundles.vcxproj.filters

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -76,19 +76,17 @@
7676
</ClCompile>
7777
</ItemGroup>
7878
<ItemGroup>
79-
<FxCompile Include="shader_mesh_alt_pixel.hlsl">
79+
<CustomBuild Include="occcity.bin">
80+
<Filter>Assets</Filter>
81+
</CustomBuild>
82+
<CustomBuild Include="shader_mesh_alt_pixel.hlsl">
8083
<Filter>Assets\Shaders</Filter>
81-
</FxCompile>
82-
<FxCompile Include="shader_mesh_simple_pixel.hlsl">
84+
</CustomBuild>
85+
<CustomBuild Include="shader_mesh_simple_pixel.hlsl">
8386
<Filter>Assets\Shaders</Filter>
84-
</FxCompile>
85-
<FxCompile Include="shader_mesh_simple_vert.hlsl">
87+
</CustomBuild>
88+
<CustomBuild Include="shader_mesh_simple_vert.hlsl">
8689
<Filter>Assets\Shaders</Filter>
87-
</FxCompile>
88-
</ItemGroup>
89-
<ItemGroup>
90-
<CustomBuild Include="occcity.bin">
91-
<Filter>Assets</Filter>
9290
</CustomBuild>
9391
</ItemGroup>
9492
<ItemGroup>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<packages>
33
<package id="Microsoft.Direct3D.D3D12" version="1.618.3" targetFramework="native" />
4+
<package id="Microsoft.Direct3D.DXC" version="1.8.2505.32" targetFramework="native" />
45
<package id="WinPixEventRuntime" version="1.0.240308001" targetFramework="native" />
56
</packages>

Samples/Desktop/D3D12DepthBoundsTest/src/D3D12DepthBoundsTest.cpp

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -162,18 +162,13 @@ void D3D12DepthBoundsTest::LoadAssets()
162162

163163
// Create the pipeline state, which includes compiling and loading shaders.
164164
{
165-
ComPtr<ID3DBlob> vertexShader;
166-
ComPtr<ID3DBlob> pixelShader;
165+
UINT8* pVertexShaderData = nullptr;
166+
UINT8* pPixelShaderData = nullptr;
167+
UINT vertexShaderDataLength = 0;
168+
UINT pixelShaderDataLength = 0;
167169

168-
#if defined(_DEBUG)
169-
// Enable better shader debugging with the graphics debugging tools.
170-
UINT compileFlags = D3DCOMPILE_DEBUG | D3DCOMPILE_SKIP_OPTIMIZATION;
171-
#else
172-
UINT compileFlags = 0;
173-
#endif
174-
175-
ThrowIfFailed(D3DCompileFromFile(GetAssetFullPath(L"shaders.hlsl").c_str(), nullptr, nullptr, "VSMain", "vs_5_0", compileFlags, 0, &vertexShader, nullptr));
176-
ThrowIfFailed(D3DCompileFromFile(GetAssetFullPath(L"shaders.hlsl").c_str(), nullptr, nullptr, "PSMain", "ps_5_0", compileFlags, 0, &pixelShader, nullptr));
170+
ThrowIfFailed(ReadDataFromFile(GetAssetFullPath(L"shaders_VSMain.cso").c_str(), &pVertexShaderData, &vertexShaderDataLength));
171+
ThrowIfFailed(ReadDataFromFile(GetAssetFullPath(L"shaders_PSMain.cso").c_str(), &pPixelShaderData, &pixelShaderDataLength));
177172

178173
// Define the vertex input layout.
179174
D3D12_INPUT_ELEMENT_DESC inputElementDescs[] =
@@ -214,8 +209,8 @@ void D3D12DepthBoundsTest::LoadAssets()
214209
renderWithDBTPSOStream.RootSignature = m_rootSignature.Get();
215210
renderWithDBTPSOStream.InputLayout = { inputElementDescs, _countof(inputElementDescs) };
216211
renderWithDBTPSOStream.PrimitiveTopologyType = D3D12_PRIMITIVE_TOPOLOGY_TYPE_TRIANGLE;
217-
renderWithDBTPSOStream.VS = CD3DX12_SHADER_BYTECODE(vertexShader.Get());
218-
renderWithDBTPSOStream.PS = CD3DX12_SHADER_BYTECODE(pixelShader.Get());
212+
renderWithDBTPSOStream.VS = CD3DX12_SHADER_BYTECODE(pVertexShaderData, vertexShaderDataLength);
213+
renderWithDBTPSOStream.PS = CD3DX12_SHADER_BYTECODE(pPixelShaderData, pixelShaderDataLength);
219214
renderWithDBTPSOStream.DSVFormat = DXGI_FORMAT_D32_FLOAT;
220215
renderWithDBTPSOStream.RTVFormats = RTFormatArray;
221216

@@ -248,7 +243,7 @@ void D3D12DepthBoundsTest::LoadAssets()
248243
depthOnlyPSOStream.RootSignature = m_rootSignature.Get();
249244
depthOnlyPSOStream.InputLayout = { inputElementDescs, _countof(inputElementDescs) };
250245
depthOnlyPSOStream.PrimitiveTopologyType = D3D12_PRIMITIVE_TOPOLOGY_TYPE_TRIANGLE;
251-
depthOnlyPSOStream.VS = CD3DX12_SHADER_BYTECODE(vertexShader.Get());
246+
depthOnlyPSOStream.VS = CD3DX12_SHADER_BYTECODE(pVertexShaderData, vertexShaderDataLength);
252247
depthOnlyPSOStream.DSVFormat = DXGI_FORMAT_D32_FLOAT;
253248
depthOnlyPSOStream.RTVFormats = RTFormatArray;
254249

Samples/Desktop/D3D12DepthBoundsTest/src/D3D12DepthBoundsTest.vcxproj

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Import Project="packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.props" Condition="Exists('packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.props')" />
34
<Import Project="packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.props" Condition="Exists('packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.props')" />
45
<ItemGroup Label="ProjectConfigurations">
56
<ProjectConfiguration Include="Debug|x64">
@@ -125,9 +126,14 @@
125126
</ItemGroup>
126127
<ItemGroup>
127128
<CustomBuild Include="shaders.hlsl">
128-
<FileType>Document</FileType>
129-
<DeploymentContent Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</DeploymentContent>
130-
<DeploymentContent Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</DeploymentContent>
129+
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">dxc.exe -nologo -Tvs_6_0 -E"VSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename)_VSMain.cso" "%(FullPath)"
130+
dxc.exe -nologo -Tps_6_0 -E"PSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename)_PSMain.cso" "%(FullPath)"</Command>
131+
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(Identity)</Message>
132+
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(OutDir)%(Filename)_VSMain.cso;$(OutDir)%(Filename)_PSMain.cso</Outputs>
133+
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">dxc.exe -nologo -Tvs_6_0 -E"VSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename)_VSMain.cso" "%(FullPath)"
134+
dxc.exe -nologo -Tps_6_0 -E"PSMain" -Zi -Qembed_debug -Fo"$(OutDir)%(Filename)_PSMain.cso" "%(FullPath)"</Command>
135+
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(Identity)</Message>
136+
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename)_VSMain.cso;$(OutDir)%(Filename)_PSMain.cso</Outputs>
131137
</CustomBuild>
132138
</ItemGroup>
133139
<ItemGroup>
@@ -137,6 +143,7 @@
137143
<ImportGroup Label="ExtensionTargets">
138144
<Import Project="packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.targets" Condition="Exists('packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.targets')" />
139145
<Import Project="packages\WinPixEventRuntime.1.0.240308001\build\WinPixEventRuntime.targets" Condition="Exists('packages\WinPixEventRuntime.1.0.240308001\build\WinPixEventRuntime.targets')" />
146+
<Import Project="packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.targets" Condition="Exists('packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.targets')" />
140147
</ImportGroup>
141148
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
142149
<PropertyGroup>
@@ -145,5 +152,7 @@
145152
<Error Condition="!Exists('packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.props')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.props'))" />
146153
<Error Condition="!Exists('packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Microsoft.Direct3D.D3D12.1.618.3\build\native\Microsoft.Direct3D.D3D12.targets'))" />
147154
<Error Condition="!Exists('packages\WinPixEventRuntime.1.0.240308001\build\WinPixEventRuntime.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\WinPixEventRuntime.1.0.240308001\build\WinPixEventRuntime.targets'))" />
155+
<Error Condition="!Exists('packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.props')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.props'))" />
156+
<Error Condition="!Exists('packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Microsoft.Direct3D.DXC.1.8.2505.32\build\native\Microsoft.Direct3D.DXC.targets'))" />
148157
</Target>
149158
</Project>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<packages>
33
<package id="Microsoft.Direct3D.D3D12" version="1.618.3" targetFramework="native" />
4+
<package id="Microsoft.Direct3D.DXC" version="1.8.2505.32" targetFramework="native" />
45
<package id="WinPixEventRuntime" version="1.0.240308001" targetFramework="native" />
56
</packages>

0 commit comments

Comments
 (0)