mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-08-04 16:32:39 +00:00
Merge branch 'shadps4-emu:main' into qt-style
This commit is contained in:
commit
73a9bcd901
@ -583,23 +583,20 @@ bool Instance::IsFormatSupported(const vk::Format format,
|
||||
return (GetFormatFeatureFlags(format) & flags) == flags;
|
||||
}
|
||||
|
||||
static vk::Format GetAlternativeFormat(const vk::Format format) {
|
||||
switch (format) {
|
||||
case vk::Format::eD16UnormS8Uint:
|
||||
return vk::Format::eD24UnormS8Uint;
|
||||
default:
|
||||
return format;
|
||||
}
|
||||
}
|
||||
|
||||
vk::Format Instance::GetSupportedFormat(const vk::Format format,
|
||||
const vk::FormatFeatureFlags2 flags) const {
|
||||
if (IsFormatSupported(format, flags)) [[likely]] {
|
||||
return format;
|
||||
}
|
||||
const vk::Format alternative = GetAlternativeFormat(format);
|
||||
if (IsFormatSupported(alternative, flags)) [[likely]] {
|
||||
return alternative;
|
||||
if (!IsFormatSupported(format, flags)) [[unlikely]] {
|
||||
switch (format) {
|
||||
case vk::Format::eD16UnormS8Uint:
|
||||
if (IsFormatSupported(vk::Format::eD24UnormS8Uint, flags)) {
|
||||
return vk::Format::eD24UnormS8Uint;
|
||||
}
|
||||
if (IsFormatSupported(vk::Format::eD32SfloatS8Uint, flags)) {
|
||||
return vk::Format::eD32SfloatS8Uint;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
return format;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user