summaryrefslogtreecommitdiffstats
path: root/tests/hlsl/dxsdk/HDRToneMappingCS11/DumpToTexture.hlsl
diff options
context:
space:
mode:
Diffstat (limited to 'tests/hlsl/dxsdk/HDRToneMappingCS11/DumpToTexture.hlsl')
-rw-r--r--tests/hlsl/dxsdk/HDRToneMappingCS11/DumpToTexture.hlsl29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/hlsl/dxsdk/HDRToneMappingCS11/DumpToTexture.hlsl b/tests/hlsl/dxsdk/HDRToneMappingCS11/DumpToTexture.hlsl
new file mode 100644
index 000000000..d2d9611ce
--- /dev/null
+++ b/tests/hlsl/dxsdk/HDRToneMappingCS11/DumpToTexture.hlsl
@@ -0,0 +1,29 @@
+//TEST_IGNORE_FILE: Currently failing due to Spire compiler issues.
+//TEST:COMPARE_HLSL: -target dxbc-assembly -profile ps_4_0 -entry PSDump
+//--------------------------------------------------------------------------------------
+// File: DumpToTexture.hlsl
+//
+// The PS for converting CS output buffer to a texture, used in CS path of
+// HDRToneMappingCS11 sample
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+//--------------------------------------------------------------------------------------
+StructuredBuffer<float4> buffer : register( t0 );
+
+struct QuadVS_Output
+{
+ float4 Pos : SV_POSITION;
+ float2 Tex : TEXCOORD0;
+};
+
+cbuffer cbPS : register( b0 )
+{
+ uint4 g_param;
+};
+
+float4 PSDump( QuadVS_Output Input ) : SV_TARGET
+{
+ // To calculate the buffer offset, it is natural to use the screen space coordinates,
+ // Input.Pos is the screen space coordinates of the pixel being written
+ return buffer[ (Input.Pos.x - 0.5) + (Input.Pos.y - 0.5) * g_param.x ];
+}