mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-04 17:10:47 +00:00
Implement support for VK_IMG_filter_cubic / VK_EXT_filter_cubic
This commit is contained in:
@@ -575,7 +575,7 @@ FilterMode MakeFilterMode(VkFilter f)
|
||||
{
|
||||
case VK_FILTER_NEAREST: return FilterMode::Point;
|
||||
case VK_FILTER_LINEAR: return FilterMode::Linear;
|
||||
case VK_FILTER_CUBIC_IMG: return FilterMode::Cubic;
|
||||
case VK_FILTER_CUBIC_EXT: return FilterMode::Cubic;
|
||||
default: break;
|
||||
}
|
||||
|
||||
|
||||
@@ -716,6 +716,7 @@ DECLARE_REFLECTION_STRUCT(VkExternalMemoryImageCreateInfoNV);
|
||||
DECLARE_REFLECTION_STRUCT(VkExternalSemaphoreProperties);
|
||||
DECLARE_REFLECTION_STRUCT(VkFenceCreateInfo);
|
||||
DECLARE_REFLECTION_STRUCT(VkFenceGetFdInfoKHR);
|
||||
DECLARE_REFLECTION_STRUCT(VkFilterCubicImageViewImageFormatPropertiesEXT);
|
||||
DECLARE_REFLECTION_STRUCT(VkFormatProperties2);
|
||||
DECLARE_REFLECTION_STRUCT(VkFramebufferAttachmentImageInfoKHR);
|
||||
DECLARE_REFLECTION_STRUCT(VkFramebufferAttachmentsCreateInfoKHR);
|
||||
@@ -777,6 +778,7 @@ DECLARE_REFLECTION_STRUCT(VkPhysicalDeviceHostQueryResetFeaturesEXT);
|
||||
DECLARE_REFLECTION_STRUCT(VkPhysicalDeviceIDProperties);
|
||||
DECLARE_REFLECTION_STRUCT(VkPhysicalDeviceImageFormatInfo2);
|
||||
DECLARE_REFLECTION_STRUCT(VkPhysicalDeviceImagelessFramebufferFeaturesKHR);
|
||||
DECLARE_REFLECTION_STRUCT(VkPhysicalDeviceImageViewImageFormatInfoEXT);
|
||||
DECLARE_REFLECTION_STRUCT(VkPhysicalDeviceIndexTypeUint8FeaturesEXT);
|
||||
DECLARE_REFLECTION_STRUCT(VkPhysicalDeviceLineRasterizationFeaturesEXT);
|
||||
DECLARE_REFLECTION_STRUCT(VkPhysicalDeviceLineRasterizationPropertiesEXT);
|
||||
@@ -973,6 +975,7 @@ DECLARE_DESERIALISE_TYPE(VkExternalMemoryImageCreateInfoNV);
|
||||
DECLARE_DESERIALISE_TYPE(VkExternalSemaphoreProperties);
|
||||
DECLARE_DESERIALISE_TYPE(VkFenceCreateInfo);
|
||||
DECLARE_DESERIALISE_TYPE(VkFenceGetFdInfoKHR);
|
||||
DECLARE_DESERIALISE_TYPE(VkFilterCubicImageViewImageFormatPropertiesEXT);
|
||||
DECLARE_DESERIALISE_TYPE(VkFormatProperties2);
|
||||
DECLARE_DESERIALISE_TYPE(VkFramebufferAttachmentImageInfoKHR);
|
||||
DECLARE_DESERIALISE_TYPE(VkFramebufferAttachmentsCreateInfoKHR);
|
||||
@@ -1032,6 +1035,7 @@ DECLARE_DESERIALISE_TYPE(VkPhysicalDeviceHostQueryResetFeaturesEXT);
|
||||
DECLARE_DESERIALISE_TYPE(VkPhysicalDeviceIDProperties);
|
||||
DECLARE_DESERIALISE_TYPE(VkPhysicalDeviceImageFormatInfo2);
|
||||
DECLARE_DESERIALISE_TYPE(VkPhysicalDeviceImagelessFramebufferFeaturesKHR);
|
||||
DECLARE_DESERIALISE_TYPE(VkPhysicalDeviceImageViewImageFormatInfoEXT);
|
||||
DECLARE_DESERIALISE_TYPE(VkPhysicalDeviceIndexTypeUint8FeaturesEXT);
|
||||
DECLARE_DESERIALISE_TYPE(VkPhysicalDeviceLineRasterizationFeaturesEXT);
|
||||
DECLARE_DESERIALISE_TYPE(VkPhysicalDeviceLineRasterizationPropertiesEXT);
|
||||
|
||||
@@ -682,6 +682,9 @@ static const VkExtensionProperties supportedExtensions[] = {
|
||||
{
|
||||
VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME, VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION,
|
||||
},
|
||||
{
|
||||
VK_EXT_FILTER_CUBIC_EXTENSION_NAME, VK_EXT_FILTER_CUBIC_SPEC_VERSION,
|
||||
},
|
||||
{
|
||||
VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION,
|
||||
},
|
||||
@@ -810,11 +813,12 @@ static const VkExtensionProperties supportedExtensions[] = {
|
||||
{
|
||||
VK_GOOGLE_HLSL_FUNCTIONALITY1_EXTENSION_NAME, VK_GOOGLE_HLSL_FUNCTIONALITY1_SPEC_VERSION,
|
||||
},
|
||||
#ifdef VK_IMG_format_pvrtc
|
||||
{
|
||||
VK_IMG_FILTER_CUBIC_EXTENSION_NAME, VK_IMG_FILTER_CUBIC_SPEC_VERSION,
|
||||
},
|
||||
{
|
||||
VK_IMG_FORMAT_PVRTC_EXTENSION_NAME, VK_IMG_FORMAT_PVRTC_SPEC_VERSION,
|
||||
},
|
||||
#endif
|
||||
{
|
||||
VK_KHR_16BIT_STORAGE_EXTENSION_NAME, VK_KHR_16BIT_STORAGE_SPEC_VERSION,
|
||||
},
|
||||
|
||||
@@ -515,6 +515,12 @@ SERIALISE_VK_HANDLES();
|
||||
/* VK_EXT_display_surface_counter */ \
|
||||
PNEXT_STRUCT(VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT, VkSurfaceCapabilities2EXT) \
|
||||
\
|
||||
/* VK_EXT_filter_cubic */ \
|
||||
PNEXT_STRUCT(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT, \
|
||||
VkPhysicalDeviceImageViewImageFormatInfoEXT) \
|
||||
PNEXT_STRUCT(VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT, \
|
||||
VkFilterCubicImageViewImageFormatPropertiesEXT) \
|
||||
\
|
||||
/* VK_EXT_fragment_density_map */ \
|
||||
PNEXT_STRUCT(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, \
|
||||
VkPhysicalDeviceFragmentDensityMapFeaturesEXT) \
|
||||
@@ -962,10 +968,6 @@ SERIALISE_VK_HANDLES();
|
||||
PNEXT_UNSUPPORTED(VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT) \
|
||||
PNEXT_UNSUPPORTED(VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT) \
|
||||
\
|
||||
/* VK_EXT_filter_cubic */ \
|
||||
PNEXT_UNSUPPORTED(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT) \
|
||||
PNEXT_UNSUPPORTED(VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT) \
|
||||
\
|
||||
/* VK_EXT_texture_compression_astc_hdr */ \
|
||||
PNEXT_UNSUPPORTED(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT) \
|
||||
\
|
||||
@@ -4105,6 +4107,39 @@ void Deserialise(const VkRenderPassSampleLocationsBeginInfoEXT &el)
|
||||
delete[] el.pPostSubpassSampleLocations;
|
||||
}
|
||||
|
||||
template <typename SerialiserType>
|
||||
void DoSerialise(SerialiserType &ser, VkPhysicalDeviceImageViewImageFormatInfoEXT &el)
|
||||
{
|
||||
RDCASSERT(ser.IsReading() ||
|
||||
el.sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT);
|
||||
SerialiseNext(ser, el.sType, el.pNext);
|
||||
|
||||
SERIALISE_MEMBER(imageViewType);
|
||||
}
|
||||
|
||||
template <>
|
||||
void Deserialise(const VkPhysicalDeviceImageViewImageFormatInfoEXT &el)
|
||||
{
|
||||
DeserialiseNext(el.pNext);
|
||||
}
|
||||
|
||||
template <typename SerialiserType>
|
||||
void DoSerialise(SerialiserType &ser, VkFilterCubicImageViewImageFormatPropertiesEXT &el)
|
||||
{
|
||||
RDCASSERT(ser.IsReading() ||
|
||||
el.sType == VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT);
|
||||
SerialiseNext(ser, el.sType, el.pNext);
|
||||
|
||||
SERIALISE_MEMBER(filterCubic);
|
||||
SERIALISE_MEMBER(filterCubicMinmax);
|
||||
}
|
||||
|
||||
template <>
|
||||
void Deserialise(const VkFilterCubicImageViewImageFormatPropertiesEXT &el)
|
||||
{
|
||||
DeserialiseNext(el.pNext);
|
||||
}
|
||||
|
||||
template <typename SerialiserType>
|
||||
void DoSerialise(SerialiserType &ser, VkPhysicalDeviceFragmentDensityMapFeaturesEXT &el)
|
||||
{
|
||||
@@ -7262,6 +7297,7 @@ INSTANTIATE_SERIALISE_TYPE(VkExternalMemoryImageCreateInfoNV);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkExternalSemaphoreProperties);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkFenceCreateInfo);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkFenceGetFdInfoKHR);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkFilterCubicImageViewImageFormatPropertiesEXT);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkFormatProperties2);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkFramebufferAttachmentImageInfoKHR);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkFramebufferAttachmentsCreateInfoKHR);
|
||||
@@ -7322,6 +7358,7 @@ INSTANTIATE_SERIALISE_TYPE(VkPhysicalDeviceHostQueryResetFeaturesEXT);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkPhysicalDeviceIDProperties);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkPhysicalDeviceImageFormatInfo2);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkPhysicalDeviceImagelessFramebufferFeaturesKHR);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkPhysicalDeviceImageViewImageFormatInfoEXT);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkPhysicalDeviceIndexTypeUint8FeaturesEXT);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkPhysicalDeviceLineRasterizationFeaturesEXT);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkPhysicalDeviceLineRasterizationPropertiesEXT);
|
||||
|
||||
Reference in New Issue
Block a user