| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- // RUN: %dxc -E main -T ps_6_5 %s | %D3DReflect %s | FileCheck %s
- // Test reflection for FeedbackTexture2D[Array]
- FeedbackTexture2D<SAMPLER_FEEDBACK_MIN_MIP> feedbackMinMip;
- FeedbackTexture2D<SAMPLER_FEEDBACK_MIP_REGION_USED> feedbackMipRegionUsed;
- FeedbackTexture2DArray<SAMPLER_FEEDBACK_MIN_MIP> feedbackMinMipArray;
- FeedbackTexture2DArray<SAMPLER_FEEDBACK_MIP_REGION_USED> feebackMipRegionUsedArray;
- Texture2D<float> texture2D;
- Texture2DArray<float> texture2DArray;
- SamplerState samp;
- float main() : SV_Target
- {
- float2 coords2D = float2(1, 2);
- float3 coords2DArray = float3(1, 2, 3);
- float clamp = 4;
- float bias = 0.5F;
- float lod = 6;
- float2 ddx = float2(1.0F / 32, 2.0F / 32);
- float2 ddy = float2(3.0F / 32, 4.0F / 32);
- float idx = 0; // Make each coord set unique
-
- feedbackMinMip.WriteSamplerFeedback(texture2D, samp, coords2D + (10 * idx++), clamp);
- feedbackMipRegionUsed.WriteSamplerFeedback(texture2D, samp, coords2D + (10 * idx++));
- feedbackMinMipArray.WriteSamplerFeedback(texture2DArray, samp, coords2DArray + (10 * idx++));
- feebackMipRegionUsedArray.WriteSamplerFeedback(texture2DArray, samp, coords2DArray + (10 * idx++));
- return 0;
- }
- // CHECK: ID3D12ShaderReflection:
- // CHECK-NEXT: D3D12_SHADER_BUFFER_DESC:
- // CHECK-NEXT: Shader Version: Pixel 6.5
- // CHECK-NEXT: Creator: <nullptr>
- // CHECK-NEXT: Flags: 0
- // CHECK-NEXT: ConstantBuffers: 0
- // CHECK-NEXT: BoundResources: 7
- // CHECK-NEXT: InputParameters: 0
- // CHECK-NEXT: OutputParameters: 1
- // CHECK-NEXT: Bound Resources:
- // CHECK-NEXT: D3D12_SHADER_BUFFER_DESC: Name: samp
- // CHECK-NEXT: Type: D3D_SIT_SAMPLER
- // CHECK-NEXT: uID: 0
- // CHECK-NEXT: BindCount: 1
- // CHECK-NEXT: BindPoint: 0
- // CHECK-NEXT: Space: 0
- // CHECK-NEXT: ReturnType: <unknown: 0>
- // CHECK-NEXT: Dimension: D3D_SRV_DIMENSION_UNKNOWN
- // CHECK-NEXT: NumSamples (or stride): 0
- // CHECK-NEXT: uFlags: 0
- // CHECK-NEXT: D3D12_SHADER_BUFFER_DESC: Name: texture2D
- // CHECK-NEXT: Type: D3D_SIT_TEXTURE
- // CHECK-NEXT: uID: 0
- // CHECK-NEXT: BindCount: 1
- // CHECK-NEXT: BindPoint: 0
- // CHECK-NEXT: Space: 0
- // CHECK-NEXT: ReturnType: D3D_RETURN_TYPE_FLOAT
- // CHECK-NEXT: Dimension: D3D_SRV_DIMENSION_TEXTURE2D
- // CHECK-NEXT: NumSamples (or stride): 4294967295
- // CHECK-NEXT: uFlags: 0
- // CHECK-NEXT: D3D12_SHADER_BUFFER_DESC: Name: texture2DArray
- // CHECK-NEXT: Type: D3D_SIT_TEXTURE
- // CHECK-NEXT: uID: 1
- // CHECK-NEXT: BindCount: 1
- // CHECK-NEXT: BindPoint: 1
- // CHECK-NEXT: Space: 0
- // CHECK-NEXT: ReturnType: D3D_RETURN_TYPE_FLOAT
- // CHECK-NEXT: Dimension: D3D_SRV_DIMENSION_TEXTURE2DARRAY
- // CHECK-NEXT: NumSamples (or stride): 4294967295
- // CHECK-NEXT: uFlags: 0
- // CHECK-NEXT: D3D12_SHADER_BUFFER_DESC: Name: feedbackMinMip
- // CHECK-NEXT: Type: D3D_SIT_UAV_FEEDBACKTEXTURE
- // CHECK-NEXT: uID: 0
- // CHECK-NEXT: BindCount: 1
- // CHECK-NEXT: BindPoint: 0
- // CHECK-NEXT: Space: 0
- // CHECK-NEXT: ReturnType: D3D_RETURN_TYPE_MIXED
- // CHECK-NEXT: Dimension: D3D_SRV_DIMENSION_TEXTURE2D
- // CHECK-NEXT: NumSamples (or stride): 4294967295
- // CHECK-NEXT: uFlags: 0
- // CHECK-NEXT: D3D12_SHADER_BUFFER_DESC: Name: feedbackMipRegionUsed
- // CHECK-NEXT: Type: D3D_SIT_UAV_FEEDBACKTEXTURE
- // CHECK-NEXT: uID: 1
- // CHECK-NEXT: BindCount: 1
- // CHECK-NEXT: BindPoint: 1
- // CHECK-NEXT: Space: 0
- // CHECK-NEXT: ReturnType: D3D_RETURN_TYPE_MIXED
- // CHECK-NEXT: Dimension: D3D_SRV_DIMENSION_TEXTURE2D
- // CHECK-NEXT: NumSamples (or stride): 4294967295
- // CHECK-NEXT: uFlags: 0
- // CHECK-NEXT: D3D12_SHADER_BUFFER_DESC: Name: feedbackMinMipArray
- // CHECK-NEXT: Type: D3D_SIT_UAV_FEEDBACKTEXTURE
- // CHECK-NEXT: uID: 2
- // CHECK-NEXT: BindCount: 1
- // CHECK-NEXT: BindPoint: 2
- // CHECK-NEXT: Space: 0
- // CHECK-NEXT: ReturnType: D3D_RETURN_TYPE_MIXED
- // CHECK-NEXT: Dimension: D3D_SRV_DIMENSION_TEXTURE2DARRAY
- // CHECK-NEXT: NumSamples (or stride): 4294967295
- // CHECK-NEXT: uFlags: 0
- // CHECK-NEXT: D3D12_SHADER_BUFFER_DESC: Name: feebackMipRegionUsedArray
- // CHECK-NEXT: Type: D3D_SIT_UAV_FEEDBACKTEXTURE
- // CHECK-NEXT: uID: 3
- // CHECK-NEXT: BindCount: 1
- // CHECK-NEXT: BindPoint: 3
- // CHECK-NEXT: Space: 0
- // CHECK-NEXT: ReturnType: D3D_RETURN_TYPE_MIXED
- // CHECK-NEXT: Dimension: D3D_SRV_DIMENSION_TEXTURE2DARRAY
- // CHECK-NEXT: NumSamples (or stride): 4294967295
- // CHECK-NEXT: uFlags: 0
|