Browse Source
[vk] Added support for sample locations in depth and depth-stencil surfaces
eds-true-adreno-fixes
CamilleLaVey
4 weeks ago
committed by
Caio Oliveira
No known key found for this signature in database
GPG Key ID: AAAE6C7FD4186B0C
1 changed files with
7 additions and
0 deletions
-
src/video_core/renderer_vulkan/vk_texture_cache.cpp
|
|
|
@ -137,6 +137,13 @@ constexpr VkBorderColor ConvertBorderColor(const std::array<float, 4>& color) { |
|
|
|
if (info.type == ImageType::e3D) { |
|
|
|
flags |= VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT; |
|
|
|
} |
|
|
|
if (device.IsExtSampleLocationsSupported()) { |
|
|
|
const auto surface_type = VideoCore::Surface::GetFormatType(info.format); |
|
|
|
if (surface_type == VideoCore::Surface::SurfaceType::Depth || |
|
|
|
surface_type == VideoCore::Surface::SurfaceType::DepthStencil) { |
|
|
|
flags |= VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT; |
|
|
|
} |
|
|
|
} |
|
|
|
const auto [samples_x, samples_y] = VideoCommon::SamplesLog2(info.num_samples); |
|
|
|
return VkImageCreateInfo{ |
|
|
|
.sType = VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO, |
|
|
|
|