buffer creation and binding

This commit is contained in:
Greg Wells
2025-06-06 13:10:42 -04:00
parent 585be0c6b0
commit 64a12b5d42
8 changed files with 34 additions and 10 deletions

View File

@@ -49,6 +49,12 @@ gnReturnCode gnCreateBufferFn(gnBufferHandle buffer, gnOutputDeviceHandle device
vkBindBufferMemory(device->outputDevice->device, buffer->buffer->buffer, buffer->buffer->bufferMemory, 0);
return GN_SUCCESS;
}
void gnBufferDataFn(gnBufferHandle buffer, size_t dataSize, void* data) {
void* bufferData;
vkMapMemory(buffer->device->outputDevice->device, buffer->buffer->bufferMemory, 0, dataSize, 0, &bufferData);
memcpy(bufferData, data, dataSize);
vkUnmapMemory(buffer->device->outputDevice->device, buffer->buffer->bufferMemory);
}
void gnDestroyBufferFn(gnBufferHandle buffer) {
vkDestroyBuffer(buffer->device->outputDevice->device, buffer->buffer->buffer, NULL);
vkFreeMemory(buffer->device->outputDevice->device, buffer->buffer->bufferMemory, NULL);