- DE_ASSERT(m_uniformAllocs.size() == bufferSizes.size());
- for (size_t allocNdx = 0; allocNdx < m_uniformAllocs.size(); allocNdx++)
- {
- const int size = bufferSizes[allocNdx];
- vk::Allocation* alloc = m_uniformAllocs[allocNdx].get();
- flushMappedMemoryRange(vk, device, alloc->getMemory(), alloc->getOffset(), size);
- }
- }
- else
- {
- DE_ASSERT(m_bufferMode == SSBOLayoutCase::BUFFERMODE_SINGLE);
- DE_ASSERT(m_uniformAllocs.size() == 1);
- int totalSize = 0;
- for (size_t bufferNdx = 0; bufferNdx < bufferSizes.size(); bufferNdx++)
- {
- totalSize += bufferSizes[bufferNdx];
- }
-
- DE_ASSERT(totalSize > 0);
- vk::Allocation* alloc = m_uniformAllocs[0].get();
- flushMappedMemoryRange(vk, device, alloc->getMemory(), alloc->getOffset(), totalSize);
+ vk::Allocation* alloc = m_uniformAllocs[allocNdx].get();
+ flushMappedMemoryRange(vk, device, alloc->getMemory(), alloc->getOffset(), VK_WHOLE_SIZE);