| 139 | } |
| 140 | |
| 141 | void VkHardwareBuffer::SetSubData(size_t offset, size_t size, const void *data) |
| 142 | { |
| 143 | size = max(size, (size_t)16); // For supporting zero byte buffers |
| 144 | |
| 145 | if (mStaging) |
| 146 | { |
| 147 | void *dst = mStaging->Map(offset, size); |
| 148 | memcpy(dst, data, size); |
| 149 | mStaging->Unmap(); |
| 150 | |
| 151 | fb->GetCommands()->GetTransferCommands()->copyBuffer(mStaging.get(), mBuffer.get(), offset, offset, size); |
| 152 | } |
| 153 | else |
| 154 | { |
| 155 | void *dst = mBuffer->Map(offset, size); |
| 156 | memcpy(dst, data, size); |
| 157 | mBuffer->Unmap(); |
| 158 | } |
| 159 | } |
| 160 | |
| 161 | void VkHardwareBuffer::Resize(size_t newsize) |
| 162 | { |
nothing calls this directly
no test coverage detected