ULRE/example/Vulkan/VKCommandBuffer.h

32 lines
707 B
C
Raw Normal View History

#ifndef HGL_GRAPH_VULKAN_COMMAND_BUFFER_INCLUDE
#define HGL_GRAPH_VULKAN_COMMAND_BUFFER_INCLUDE
#include"VK.h"
VK_NAMESPACE_BEGIN
2019-04-18 22:10:24 +08:00
class RenderPass;
class Framebuffer;
class Pipeline;
class VertexInput;
2019-04-16 13:21:21 +08:00
2019-04-18 22:10:24 +08:00
class CommandBuffer
{
VkDevice device;
VkCommandPool pool;
VkCommandBuffer cmd_buf;
2019-04-16 13:21:21 +08:00
2019-04-18 22:10:24 +08:00
VkClearValue clear_values[2];
VkRect2D render_area;
2019-04-16 13:21:21 +08:00
2019-04-18 22:10:24 +08:00
public:
2019-04-16 13:21:21 +08:00
2019-04-18 22:10:24 +08:00
CommandBuffer(VkDevice dev,VkCommandPool cp,VkCommandBuffer cb);
~CommandBuffer();
2019-04-18 22:10:24 +08:00
void SetRenderArea(const VkRect2D &ra){render_area=ra;}
2019-04-18 22:10:24 +08:00
bool Bind(RenderPass *rp,Framebuffer *fb,Pipeline *p);
bool Bind(VertexInput *vi);
};//class CommandBuffer
VK_NAMESPACE_END
#endif//HGL_GRAPH_VULKAN_COMMAND_BUFFER_INCLUDE