layout: vk::ImageLayout::AttachmentOptimal,
},
+ Access::ComputeOtherRead => VulkanAccessInfo {
+ stages: vk::PipelineStageFlags2::COMPUTE_SHADER,
+ access: vk::AccessFlags2::SHADER_READ,
+ layout: vk::ImageLayout::General,
+ },
+
Access::ShaderUniformBufferRead => VulkanAccessInfo {
stages: vk::PipelineStageFlags2::ALL_COMMANDS,
access: vk::AccessFlags2::UNIFORM_READ,
access: vk::AccessFlags2::DEPTH_STENCIL_ATTACHMENT_WRITE,
layout: vk::ImageLayout::DepthAttachmentOptimal,
},
+
+ Access::ComputeWrite => VulkanAccessInfo {
+ stages: vk::PipelineStageFlags2::COMPUTE_SHADER,
+ access: vk::AccessFlags2::SHADER_WRITE,
+ layout: vk::ImageLayout::General,
+ },
+
Access::ShaderWrite => VulkanAccessInfo {
stages: vk::PipelineStageFlags2::ALL_COMMANDS,
access: vk::AccessFlags2::SHADER_WRITE,
/// Read as a depth-stencil attachment.
DepthStencilAttachmentRead,
+ /// Read as any other resource in a compute shader.
+ ComputeOtherRead,
+
/// Read as a uniform buffer in any shader.
ShaderUniformBufferRead,
/// Read as a uniform buffer or vertex buffer in any shader.
/// Written as a depth-stencil attachment during rendering.
DepthStencilAttachmentWrite,
+ /// Written as a resource in a compute shader.
+ ComputeWrite,
+
/// Written as any resource in any shader.
ShaderWrite,
Access::FragmentShaderOtherRead => true,
Access::ColorAttachmentRead => true,
Access::DepthStencilAttachmentRead => true,
+ Access::ComputeOtherRead => true,
Access::ShaderUniformBufferRead => true,
Access::ShaderUniformBufferOrVertexBufferRead => true,
Access::ShaderSampledImageRead => true,
Access::FragmentShaderWrite => false,
Access::ColorAttachmentWrite => false,
Access::DepthStencilAttachmentWrite => false,
+ Access::ComputeWrite => true,
Access::ShaderWrite => false,
Access::TransferWrite => false,
Access::HostPreInitializedWrite => false,