diff options
| author | SirKero <sirkero@gmx.de> | 2023-08-04 19:30:33 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-08-04 13:30:33 -0400 |
| commit | 17da4f0dec2b86ba3a4bdaf8a2ae112047d23623 (patch) | |
| tree | 07259fe2cc0f82914919d3101cb66b7aaccb6101 | |
| parent | 77347979af5606f42b27222ce57d4647ccd668d9 (diff) | |
Added D3D12 RenderTargetView TextureCube case (#3048)
* Added D3D12 RenderTargetView TextureCube case
* Added D3D12 DepthStencilView TextureCube case
---------
Co-authored-by: jsmall-nvidia <jsmall@nvidia.com>
| -rw-r--r-- | tools/gfx/d3d12/d3d12-device.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tools/gfx/d3d12/d3d12-device.cpp b/tools/gfx/d3d12/d3d12-device.cpp index 68078b445..3f62c2d5c 100644 --- a/tools/gfx/d3d12/d3d12-device.cpp +++ b/tools/gfx/d3d12/d3d12-device.cpp @@ -1415,6 +1415,16 @@ Result DeviceImpl::createTextureView( } } break; + case IResource::Type::TextureCube: + rtvDesc.ViewDimension = D3D12_RTV_DIMENSION_TEXTURE2DARRAY; + rtvDesc.Texture2DArray.MipSlice = desc.subresourceRange.mipLevel; + rtvDesc.Texture2DArray.ArraySize = desc.subresourceRange.layerCount; + rtvDesc.Texture2DArray.FirstArraySlice = desc.subresourceRange.baseArrayLayer; + rtvDesc.Texture2DArray.PlaneSlice = + resourceImpl + ? D3DUtil::getPlaneSlice(D3DUtil::getMapFormat(resourceImpl->getDesc()->format), desc.subresourceRange.aspectMask) + : 0; + break; case IResource::Type::Texture3D: rtvDesc.ViewDimension = D3D12_RTV_DIMENSION_TEXTURE3D; rtvDesc.Texture3D.MipSlice = desc.subresourceRange.mipLevel; @@ -1463,6 +1473,12 @@ Result DeviceImpl::createTextureView( dsvDesc.Texture2DArray.FirstArraySlice = desc.subresourceRange.baseArrayLayer; } break; + case IResource::Type::TextureCube: + dsvDesc.ViewDimension = D3D12_DSV_DIMENSION_TEXTURE2DARRAY; + dsvDesc.Texture2DArray.MipSlice = desc.subresourceRange.mipLevel; + dsvDesc.Texture2DArray.ArraySize = desc.subresourceRange.layerCount; + dsvDesc.Texture2DArray.FirstArraySlice = desc.subresourceRange.baseArrayLayer; + break; default: return SLANG_FAIL; } |
