diff options
| author | jsmall-nvidia <jsmall@nvidia.com> | 2020-08-03 15:46:16 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-08-03 15:46:16 -0400 |
| commit | 79ba9279becf480c9d92bb2faaede0e241f0b029 (patch) | |
| tree | 5e904295c6b0731fdfba0d17ab03ba54d5f92565 /source/slang/slang-type-system-shared.cpp | |
| parent | 9ac5c51ae1f0664a9dcb31392894e4f76bdbcf98 (diff) | |
First pass support for Sampler Feedback (#1470)
* 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.
Co-authored-by: Tim Foley <tfoleyNV@users.noreply.github.com>
Diffstat (limited to 'source/slang/slang-type-system-shared.cpp')
| -rw-r--r-- | source/slang/slang-type-system-shared.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source/slang/slang-type-system-shared.cpp b/source/slang/slang-type-system-shared.cpp index 7ccde5bcd..a8265de20 100644 --- a/source/slang/slang-type-system-shared.cpp +++ b/source/slang/slang-type-system-shared.cpp @@ -1,5 +1,7 @@ #include "slang-type-system-shared.h" +#include "../core/slang-common.h" + namespace Slang { TextureFlavor TextureFlavor::create(SlangResourceShape shape, SlangResourceAccess access) @@ -8,4 +10,12 @@ namespace Slang rs.flavor = uint16_t(shape | (access << 8)); return rs; } + + TextureFlavor TextureFlavor::create(SlangResourceShape shape, SlangResourceAccess access, int flags) + { + SLANG_ASSERT((flags & ~int(SLANG_RESOURCE_EXT_SHAPE_MASK)) == 0); + TextureFlavor rs; + rs.flavor = uint16_t(shape | (access << 8) | flags); + return rs; + } } |
