Filesystem errors and Base Array Layers (#280)

* Filesystem errors and Base Array Layers

* Fixed build for POSIX

* forgot 1 file
This commit is contained in:
Vladislav Mikhalin 2024-07-11 14:37:21 +03:00 committed by GitHub
parent 59be090c83
commit 989f88837d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 34 additions and 26 deletions

View file

@ -50,8 +50,8 @@ ImageViewInfo::ImageViewInfo(const AmdGpu::Image& image, bool is_storage) noexce
: is_storage{is_storage} {
type = ConvertImageViewType(image.GetType());
format = Vulkan::LiverpoolToVK::SurfaceFormat(image.GetDataFmt(), image.GetNumberFmt());
range.base.level = 0;
range.base.layer = 0;
range.base.level = static_cast<u32>(image.base_level);
range.base.layer = static_cast<u32>(image.base_array);
range.extent.levels = image.NumLevels();
range.extent.layers = image.NumLayers();
if (!is_storage) {
@ -95,7 +95,7 @@ ImageView::ImageView(const Vulkan::Instance& instance, const ImageViewInfo& info
.aspectMask = aspect,
.baseMipLevel = 0U,
.levelCount = 1,
.baseArrayLayer = 0,
.baseArrayLayer = info_.range.base.layer,
.layerCount = image.info.IsBlockCoded() ? 1 : VK_REMAINING_ARRAY_LAYERS,
},
};

View file

@ -45,15 +45,15 @@ struct SubresourceLayers {
};
struct SubresourceBase {
s32 level = 0;
s32 layer = 0;
u32 level = 0;
u32 layer = 0;
auto operator<=>(const SubresourceBase&) const = default;
};
struct SubresourceExtent {
s32 levels = 1;
s32 layers = 1;
u32 levels = 1;
u32 layers = 1;
auto operator<=>(const SubresourceExtent&) const = default;
};