Add initial support for compute pipelines
This commit is contained in:
committed by
Jérôme Leclercq
parent
e4064997d8
commit
9578ba3ef5
@@ -4,6 +4,7 @@
|
||||
|
||||
#include <Nazara/VulkanRenderer/VulkanDevice.hpp>
|
||||
#include <Nazara/VulkanRenderer/VulkanCommandPool.hpp>
|
||||
#include <Nazara/VulkanRenderer/VulkanComputePipeline.hpp>
|
||||
#include <Nazara/VulkanRenderer/VulkanRenderPass.hpp>
|
||||
#include <Nazara/VulkanRenderer/VulkanRenderPipeline.hpp>
|
||||
#include <Nazara/VulkanRenderer/VulkanRenderPipelineLayout.hpp>
|
||||
@@ -37,6 +38,11 @@ namespace Nz
|
||||
return std::make_shared<VulkanCommandPool>(*this, queueType);
|
||||
}
|
||||
|
||||
std::shared_ptr<ComputePipeline> VulkanDevice::InstantiateComputePipeline(ComputePipelineInfo pipelineInfo)
|
||||
{
|
||||
return std::make_shared<VulkanComputePipeline>(*this, std::move(pipelineInfo));
|
||||
}
|
||||
|
||||
std::shared_ptr<Framebuffer> VulkanDevice::InstantiateFramebuffer(unsigned int width, unsigned int height, const std::shared_ptr<RenderPass>& renderPass, const std::vector<std::shared_ptr<Texture>>& attachments)
|
||||
{
|
||||
return std::make_shared<VulkanTextureFramebuffer>(*this, width, height, renderPass, attachments);
|
||||
@@ -111,6 +117,10 @@ namespace Nz
|
||||
flags = VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT;
|
||||
break;
|
||||
|
||||
case TextureUsage::ShaderReadWrite:
|
||||
flags = VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT;
|
||||
break;
|
||||
|
||||
case TextureUsage::TransferSource:
|
||||
flags = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user