Skip to content

Release for Vulkan SDK 1.3.296

Latest
Compare
Choose a tag to compare
@billhollings billhollings released this 02 Oct 22:35
81541f6

Note: An issue occurred in publishing the build artifacts for this release. If you are looking for the release build artifacts, you can find them here.

  • Support dynamically allocating descriptors when pool is exhausted.
  • Deprecate MVKConfiguration::preallocateDescriptors and MVK_CONFIG_PREALLOCATE_DESCRIPTORS environment variable.
  • vkAllocateDescriptorSets(): Per Vulkan spec, if any descriptor set allocation
    fails, populate all descriptor set pointers with VK_NULL_HANDLE. In addition,
    return VK_ERROR_FRAGMENTED_POOL if failure was due to pool fragmentation.
  • vkUpdateDescriptorSets(): Per Vulkan spec, allow write or copy beyond the
    end of a descriptor binding count, including inline uniform block descriptors.
  • Update VkFormat capabilities based on latest Metal docs.
  • Ensure all MoltenVK config info set by VK_EXT_layer_settings is used.
  • Advertise VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT and
    VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT for storage texel buffers.
  • Support storage images in Metal argument buffers on iOS.
  • vkUpdateDescriptorSets(): Support writing beyond descriptor binding size if subsequent bindings are of same type.
  • Fix rendering issue with render pass that immediately follows a kernel dispatch.
  • Fix occasional GPU crash when a smaller descriptor set replaces a larger one.
  • Fix race condition when VkImage destroyed while used by descriptor.
  • Fix crash in vkCmdPushDescriptorSetWithTemplateKHR() when entries in
    VkDescriptorUpdateTemplateCreateInfo are not sorted by offset.
  • Fix issue where vkQueueWaitIdle() and vkDeviceWaitIdle() were not
    waiting for all commands to be enqueued before enqueuing wait operation.
  • Fix occassional incorrect detection of available descriptor sets during vkAllocateDescriptorSets().
  • Fix shader conversion failure when using storage images on iOS & tvOS with Tier 1 argument buffer support.
  • Fix occasional memory leak where spurious texel buffer was accidentally created during image-memory unbinding.
  • Fix memory leak in debug utils messenger.
  • Fix crash when VkDescriptorSetLayout is destroyed while descriptor set is in use.
  • Fix build failure on VisionOS 2.0 platform.
  • Support VK_FORMAT_A2B10G10R10_UNORM_PACK32 and VK_FORMAT_A2R10G10B10_UNORM_PACK32 formats as surface formats on all platforms.
  • Add MTLStoreAction mapping for VK_ATTACHMENT_STORE_OP_NONE.
  • Add estimate of presentMargin in returned data from vkGetPastPresentationTimingGOOGLE().
  • Update value of minSubgroupSize on AMD RX6600 to 32.
  • Fix support for running on tvOS 13.
  • Only add present handler if VK_GOOGLE_display_timing info is available during presentation.
  • Move primitive-restart-disabled warning from renderpass to pipeline creation, to reduce voluminous log noise.
  • iOS: Support storage images in Metal argument buffers.
  • Add MVKConfiguration::shaderLogEstimatedGLSL, and environment variable MVK_CONFIG_SHADER_LOG_ESTIMATED_GLSL,
    to enable or disable the logging of estimated GLSL code, and disable it by default
  • Fix endless loop in fetchDependencies when -- is missing on platform names.
  • Update dependency libraries to match Vulkan SDK 1.3.296.
  • Update MVK_PRIVATE_API_VERSION to version 43.
  • Update to latest SPIRV-Cross:
    • Various non-feature maintenance updates.