save the Renderpass data at RenderTarget class. but It's a really good idea?

This commit is contained in:
hyzboy 2020-10-18 18:00:37 +08:00
parent 377fb5718d
commit 8017e319c7
2 changed files with 7 additions and 7 deletions

View File

@ -14,6 +14,7 @@ class RenderTarget:public SubmitQueue
{
protected:
RenderPass *rp;
Framebuffer *fb;
VkExtent2D extent;
@ -32,7 +33,7 @@ protected:
friend class Device;
RenderTarget(Device *dev,Framebuffer *_fb,CommandBuffer *_cb,const uint32_t fence_count=1);
RenderTarget(Device *dev,Framebuffer *_fb,CommandBuffer *_cb,Texture2D **color_texture_list,const uint32_t color_count,Texture2D *depth_texture,const uint32_t fence_count=1);
RenderTarget(Device *dev,RenderPass *_rp,Framebuffer *_fb,CommandBuffer *_cb,Texture2D **color_texture_list,const uint32_t color_count,Texture2D *depth_texture,const uint32_t fence_count=1);
public:

View File

@ -5,13 +5,9 @@
#include<hgl/graph/vulkan/VKSemaphore.h>
VK_NAMESPACE_BEGIN
namespace
{
const VkPipelineStageFlags pipe_stage_flags=VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT;
}//namespace
RenderTarget::RenderTarget(Device *dev,Framebuffer *_fb,CommandBuffer *_cb,const uint32_t fence_count):SubmitQueue(dev,dev->GetGraphicsQueue(),fence_count)
{
rp=nullptr;
fb=_fb;
command_buffer=_cb;
@ -25,8 +21,9 @@ RenderTarget::RenderTarget(Device *dev,Framebuffer *_fb,CommandBuffer *_cb,const
render_complete_semaphore=dev->CreateSemaphore();
}
RenderTarget::RenderTarget(Device *dev,Framebuffer *_fb,CommandBuffer *_cb,Texture2D **ctl,const uint32_t cc,Texture2D *dt,const uint32_t fence_count):SubmitQueue(dev,dev->GetGraphicsQueue(),fence_count)
RenderTarget::RenderTarget(Device *dev,RenderPass *_rp,Framebuffer *_fb,CommandBuffer *_cb,Texture2D **ctl,const uint32_t cc,Texture2D *dt,const uint32_t fence_count):SubmitQueue(dev,dev->GetGraphicsQueue(),fence_count)
{
rp=_rp;
fb=_fb;
command_buffer=_cb;
@ -52,6 +49,8 @@ RenderTarget::~RenderTarget()
SAFE_CLEAR(render_complete_semaphore);
SAFE_CLEAR(command_buffer);
SAFE_CLEAR(fb);
SAFE_CLEAR(rp);
}
bool RenderTarget::Submit(GPUSemaphore *present_complete_semaphore)