diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/vk-api.hpp | 6 | ||||
| -rw-r--r-- | include/vk-renderer.hpp | 2 | ||||
| -rw-r--r-- | include/vulkan-loader.hpp | 1 |
3 files changed, 9 insertions, 0 deletions
diff --git a/include/vk-api.hpp b/include/vk-api.hpp index 099f4de..ed8ff65 100644 --- a/include/vk-api.hpp +++ b/include/vk-api.hpp @@ -22,14 +22,18 @@ struct ComputePipeline { struct Image { VkImage handle; VkImageView view; + VmaAllocation alloc; VkImageSubresourceRange subresource_range; VkFormat format; + VkExtent3D size; }; struct Swapchain { size_t image_count; std::vector<Image> images; VkSwapchainKHR handle; + VkSurfaceFormatKHR surface_format; + VkExtent2D extent; }; class window; @@ -90,6 +94,8 @@ class vkapi { void run_compute_pipeline(VkCommandBuffer command_buffer, ComputePipeline pipeline, VkDescriptorSet set, size_t group_count_x, size_t group_count_y, size_t group_count_z); + void blit_full(VkCommandBuffer command_buffer, Image src_image, Image dst_image); + void end_record(VkCommandBuffer command_buffer); VkResult submit(VkCommandBuffer command_buffer, VkSemaphore wait_semaphore, VkSemaphore signal_semaphore, VkFence submission_fence); diff --git a/include/vk-renderer.hpp b/include/vk-renderer.hpp index f16adf5..1180d0a 100644 --- a/include/vk-renderer.hpp +++ b/include/vk-renderer.hpp @@ -29,6 +29,8 @@ class vkrenderer { uint64_t frame_index = 0; + Image accumulation_image; + std::vector<VkCommandBuffer> command_buffers; std::vector<VkDescriptorSet> compute_shader_sets; diff --git a/include/vulkan-loader.hpp b/include/vulkan-loader.hpp index 3e01132..d6773f3 100644 --- a/include/vulkan-loader.hpp +++ b/include/vulkan-loader.hpp @@ -84,6 +84,7 @@ X(vkCmdBindDescriptorSets) \ X(vkCmdCopyBuffer) \ X(vkCmdCopyImage) \ + X(vkCmdBlitImage) \ X(vkCmdCopyBufferToImage) \ X(vkCmdDraw) \ X(vkCmdDrawIndexed) \ |
