14 MultiBuffer(BufferType bufferType,
size_t size,
const char* debugName,
const void* srcData =
nullptr);
16 void Update(
const void* srcData,
size_t srcSize,
size_t dstOffset = 0);
19 VkBuffer
Get(uint32_t frameIndex);
22 Buffer* GetBuffer(uint32_t frameIndex);
24 size_t GetSize()
const;
28 friend class DestroyQueue;
29 virtual ~MultiBuffer();
33 Buffer* mBuffers[MAX_FRAMES * 2] = {};
39 class UniformBuffer* mUniformBuffer =
nullptr;
40 uint8_t* mData =
nullptr;
46class UniformBuffer :
public MultiBuffer
49 UniformBuffer(
size_t size,
const char* debugName,
const void* srcData =
nullptr);
51 void Reset(uint32_t frameIndex);
53 UniformBlock AllocBlock(uint32_t blockSize);
56 using MultiBuffer::Get;
57 using MultiBuffer::GetBuffer;
67 int32_t mHead[MAX_FRAMES] = {};
bool Update()
Definition Engine.cpp:710