85 (VK_ACCESS_SHADER_WRITE_BIT | VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT |
86 VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT | VK_ACCESS_TRANSFER_WRITE_BIT |
87 VK_ACCESS_HOST_WRITE_BIT | VK_ACCESS_MEMORY_WRITE_BIT));
118 VkBuffer vk_buffer = VK_NULL_HANDLE;
123 VkImage vk_image = VK_NULL_HANDLE;
125 uint32_t layer_count = 0;
135 VKResourceBarrierState barrier_state;
152 bool has_multiple_layers()
157 return image.layer_count > 1;
161 Map<ResourceHandle, Resource> resources_;
162 Vector<ResourceHandle> unused_handles_;
163 Map<VkImage, ResourceHandle> image_resources_;
164 Map<VkBuffer, ResourceHandle> buffer_resources_;
183 void add_buffer(VkBuffer vk_buffer,
const char *name =
nullptr);
191 void add_image(VkImage vk_image, uint32_t layer_count,
const char *name =
nullptr);
256 return resources_.lookup(resource_handle).type;
277#ifdef VK_RESOURCE_STATE_TRACKER_VALIDATION
278 void validate()
const;
#define ENUM_OPERATORS(_type, _max)
unsigned long long int uint64_t
VKResourceType resource_type_get(ResourceHandle resource_handle) const
ResourceWithStamp get_image_and_increase_stamp(VkImage vk_image)
ResourceWithStamp get_buffer_and_increase_stamp(VkBuffer vk_buffer)
ResourceWithStamp get_buffer(VkBuffer vk_buffer) const
bool use_dynamic_rendering_local_read
void remove_buffer(VkBuffer vk_buffer)
friend class VKCommandBuilder
void add_image(VkImage vk_image, uint32_t layer_count, const char *name=nullptr)
void add_buffer(VkBuffer vk_buffer, const char *name=nullptr)
void remove_image(VkImage vk_image)
ResourceWithStamp get_image(VkImage vk_image) const
friend struct VKRenderGraphLink
bool use_dynamic_rendering
uint64_t ModificationStamp
VkPipelineStageFlags vk_pipeline_stages
VkImageLayout image_layout
bool is_new_stamp() const