diff options
| author | Yong He <yonghe@outlook.com> | 2022-02-19 00:15:17 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-02-19 00:15:17 -0800 |
| commit | e272aec6a9ddb8b0af82f72c061f5393f2b2bdab (patch) | |
| tree | 11ec24a9464f5922e896bfff6e125c2d6279d4b3 /tools/gfx/renderer-shared.h | |
| parent | e993ff5f8d21d77dd3fb579f7afc51c6dcad834c (diff) | |
Optimize d3d12 mutable shader object implementation. (#2138)
* Optimize d3d12 mutable shader object implementation.
* Disable mismatched clear value warning message from d3d sdk.
* Fix.
* Fix.
* gfx: Avoid redundant d3d12 QueryInterface call.
Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'tools/gfx/renderer-shared.h')
| -rw-r--r-- | tools/gfx/renderer-shared.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/tools/gfx/renderer-shared.h b/tools/gfx/renderer-shared.h index 8fc74158c..8136d6735 100644 --- a/tools/gfx/renderer-shared.h +++ b/tools/gfx/renderer-shared.h @@ -546,7 +546,7 @@ public: } virtual SLANG_NO_THROW Result SLANG_MCALL - copyFrom(IShaderObject* object, ITransientResourceHeap* transientHeap) override; + copyFrom(IShaderObject* object, ITransientResourceHeap* transientHeap); virtual SLANG_NO_THROW const void* SLANG_MCALL getRawData() override { @@ -596,6 +596,13 @@ public: void setSpecializationArgsForContainerElement(ExtendedShaderObjectTypeList& specializationArgs); + Slang::Index getSubObjectIndex(ShaderOffset offset) + { + auto layout = getLayout(); + auto bindingRange = layout->getBindingRange(offset.bindingRangeIndex); + return bindingRange.subObjectIndex + offset.bindingArrayIndex; + } + virtual SLANG_NO_THROW Result SLANG_MCALL setObject(ShaderOffset const& offset, IShaderObject* object) SLANG_OVERRIDE { |
