zengine/engine/modules/render/vulkan/include/vkn/wrapper/commandbuffer.h
2024-10-12 17:40:59 +08:00

22 lines
614 B
C++

#pragma once
#include "vkn/type.h"
namespace vkn {
class CommandBuffer {
protected:
VkCommandBuffer mPtr;
public:
CommandBuffer() : mPtr(nullptr) {};
CommandBuffer(VkCommandBuffer ptr) : mPtr(ptr) {};
VkCommandBuffer& Ptr() {
return mPtr;
};
void Reset();
void BeginRecord(VkCommandBufferUsageFlags flag);
void EndRecord();
void CmdCopyBuffer(VkBuffer srcBuffer, VkBuffer dstBuffer, VkDeviceSize size);
void Submit(VkQueue& queue,VkFence fence);
void BindVertexBuffer(VkBuffer buffer, uint32_t offset);
void BindIndexBuffers(VkBuffer buffer, uint32_t offset, VkIndexType type);
};
}