diff options
| author | Yong He <yonghe@outlook.com> | 2022-10-05 19:35:47 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-05 19:35:47 -0700 |
| commit | cf34d2830a3103b2b47a4140d27d054b797705f2 (patch) | |
| tree | 3620bc07e53edc6c959777d069b1931aa28691e4 /tools/gfx/d3d12/d3d12-helper-functions.cpp | |
| parent | 364e43264b9f69957ddaed8890392d82fb25c822 (diff) | |
Various gfx fixes. (#2434)
Diffstat (limited to 'tools/gfx/d3d12/d3d12-helper-functions.cpp')
| -rw-r--r-- | tools/gfx/d3d12/d3d12-helper-functions.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tools/gfx/d3d12/d3d12-helper-functions.cpp b/tools/gfx/d3d12/d3d12-helper-functions.cpp index ee937ed4a..5f9102d0c 100644 --- a/tools/gfx/d3d12/d3d12-helper-functions.cpp +++ b/tools/gfx/d3d12/d3d12-helper-functions.cpp @@ -533,6 +533,37 @@ Result createNullDescriptor( d3dDevice->CreateShaderResourceView(nullptr, &srvDesc, destDescriptor); } break; + case slang::BindingType::MutableTexture: + { + D3D12_UNORDERED_ACCESS_VIEW_DESC uavDesc = {}; + uavDesc.Format = DXGI_FORMAT_R8G8B8A8_UNORM; + switch (bindingRange.resourceShape) + { + case SLANG_TEXTURE_1D: + uavDesc.ViewDimension = D3D12_UAV_DIMENSION_TEXTURE1D; + break; + case SLANG_TEXTURE_1D_ARRAY: + uavDesc.ViewDimension = D3D12_UAV_DIMENSION_TEXTURE1DARRAY; + break; + case SLANG_TEXTURE_2D: + uavDesc.ViewDimension = D3D12_UAV_DIMENSION_TEXTURE2D; + break; + case SLANG_TEXTURE_2D_ARRAY: + uavDesc.ViewDimension = D3D12_UAV_DIMENSION_TEXTURE2DARRAY; + break; + case SLANG_TEXTURE_3D: + uavDesc.ViewDimension = D3D12_UAV_DIMENSION_TEXTURE3D; + break; + case SLANG_TEXTURE_CUBE: + case SLANG_TEXTURE_CUBE_ARRAY: + case SLANG_TEXTURE_2D_MULTISAMPLE: + case SLANG_TEXTURE_2D_MULTISAMPLE_ARRAY: + default: + return SLANG_OK; + } + d3dDevice->CreateUnorderedAccessView(nullptr, nullptr, &uavDesc, destDescriptor); + } + break; default: break; } |
