aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/vk/GrVkCaps.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/vk/GrVkCaps.cpp')
-rw-r--r--src/gpu/vk/GrVkCaps.cpp24
1 files changed, 4 insertions, 20 deletions
diff --git a/src/gpu/vk/GrVkCaps.cpp b/src/gpu/vk/GrVkCaps.cpp
index 8af81190af..0ae7c00995 100644
--- a/src/gpu/vk/GrVkCaps.cpp
+++ b/src/gpu/vk/GrVkCaps.cpp
@@ -346,7 +346,7 @@ void GrVkCaps::ConfigInfo::initSampleCounts(const GrVkInterface* interface,
&properties));
VkSampleCountFlags flags = properties.sampleCounts;
if (flags & VK_SAMPLE_COUNT_1_BIT) {
- fColorSampleCounts.push(1);
+ fColorSampleCounts.push(0);
}
if (kImagination_VkVendor == physProps.vendorID) {
// MSAA does not work on imagination
@@ -386,34 +386,18 @@ void GrVkCaps::ConfigInfo::init(const GrVkInterface* interface,
}
}
-int GrVkCaps::getRenderTargetSampleCount(int requestedCount, GrPixelConfig config) const {
- requestedCount = SkTMax(1, requestedCount);
+int GrVkCaps::getSampleCount(int requestedCount, GrPixelConfig config) const {
int count = fConfigTable[config].fColorSampleCounts.count();
-
- if (!count) {
+ if (!count || !this->isConfigRenderable(config, true)) {
return 0;
}
- if (1 == requestedCount) {
- SkASSERT(fConfigTable[config].fColorSampleCounts.count() &&
- fConfigTable[config].fColorSampleCounts[0] == 1);
- return 1;
- }
-
for (int i = 0; i < count; ++i) {
if (fConfigTable[config].fColorSampleCounts[i] >= requestedCount) {
return fConfigTable[config].fColorSampleCounts[i];
}
}
- return 0;
-}
-
-int GrVkCaps::maxRenderTargetSampleCount(GrPixelConfig config) const {
- const auto& table = fConfigTable[config].fColorSampleCounts;
- if (!table.count()) {
- return 0;
- }
- return table[table.count() - 1];
+ return fConfigTable[config].fColorSampleCounts[count-1];
}
bool validate_image_info(const GrVkImageInfo* imageInfo, SkColorType ct, GrPixelConfig* config) {