From 092337a67e7ef8ec108cab9cb6679e59bb2ff791 Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Tue, 4 Aug 2020 19:34:33 -0400 Subject: Sampler Feedback improvements (#1475) * Add the Feedback texture types. Depreciate SLANG_RESOURCE_EXT_SHAPE_MASK. * Starting point to test sampler feedback. * WIP on FeedbackSampler. * Use __target_intrinsic to override the output of sampler feedback types. * Use newer generic syntax for FeedbackTexture. * Reflects Feedback type. * SLANG_TYPE_KIND_TEXTURE_FEEDBACK -> SLANG_TYPE_KIND_FEEDBACK * Added reflection test. * Reneable issue with generics in sampler-feedback-basic.slang * Add methods to FeedbackTexture2D/Array. Make test cover test cases. * Sampler feedback produces DXC code. * Disabled Sampler feedback test - as requires newer version of DXC. * Fix bug in reflection tool output. * Fix problem with direct-spirv-emit.slang.expected due to update to glslang. * Fix direct-spirv-emit.slang * Use SLANG_RESOURCE_EXT_SHAPE_MASK again * Make Feedback be emitted as a textue type prefix. * Add support for GetDimensions to FeedbackTexture2D * WIP on CPU sampler feedback. Update of target compatibility. * Fix some bugs in C++ feedback sampler. Fix GetDimensions for FeedbackTextures. Run 'Compile' test for CPU compute feedback texture test. Update target-compatability.md * Fix GetDimensions call on feedback sampler. * Small documentation improvements. Co-authored-by: Tim Foley --- tests/hlsl-intrinsic/sampler-feedback/sampler-feedback-basic.slang | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'tests/hlsl-intrinsic/sampler-feedback/sampler-feedback-basic.slang') diff --git a/tests/hlsl-intrinsic/sampler-feedback/sampler-feedback-basic.slang b/tests/hlsl-intrinsic/sampler-feedback/sampler-feedback-basic.slang index 9e707b229..3b9497e5e 100644 --- a/tests/hlsl-intrinsic/sampler-feedback/sampler-feedback-basic.slang +++ b/tests/hlsl-intrinsic/sampler-feedback/sampler-feedback-basic.slang @@ -20,6 +20,11 @@ float4 main() : SV_Target float lod = 6; float2 ddx = float2(1.0F / 32, 2.0F / 32); float2 ddy = float2(3.0F / 32, 4.0F / 32); + + uint width, height, elements; + feedbackMinMip.GetDimensions(width, height); + + feedbackMinMipArray.GetDimensions(width, height, elements); // Clamped feedbackMinMip.WriteSamplerFeedback(tex2D, samp, coords2D, clamp); -- cgit v1.2.3