add support for storage buffers in vulkan
This commit is contained in:
@@ -63,6 +63,7 @@ gnDeviceFunctions loadFunctionLoaderDeviceFunctions() {
|
||||
|
||||
._gnCreateBuffer = checkCreateBuffer,
|
||||
._gnBufferData = checkBufferData,
|
||||
._gnBufferSubData = checkBufferSubData,
|
||||
._gnMapBuffer = checkMapBuffer,
|
||||
._gnDestroyBuffer = checkDestroyBuffer,
|
||||
|
||||
@@ -71,6 +72,7 @@ gnDeviceFunctions loadFunctionLoaderDeviceFunctions() {
|
||||
._gnDestroyUniformPool = checkDestroyUniformPool,
|
||||
|
||||
._gnUpdateBufferUniform = checkUpdateBufferUniform,
|
||||
._gnUpdateStorageUniform = checkUpdateStorageUniform,
|
||||
._gnUpdateImageUniform = checkUpdateImageUniform,
|
||||
|
||||
._gnCreateTexture = checkCreateTexture,
|
||||
|
@@ -110,6 +110,9 @@ gnReturnCode checkCreateBuffer(gnBufferHandle buffer, gnDeviceHandle device, gnB
|
||||
void checkBufferData(gnBufferHandle buffer, size_t size, void* data) {
|
||||
CHECK_VOID_FUNCTION(buffer->device->instance, _gnBufferData, buffer, size, data);
|
||||
}
|
||||
void checkBufferSubData(gnBufferHandle buffer, size_t offset, size_t size, void* data) {
|
||||
CHECK_VOID_FUNCTION(buffer->device->instance, _gnBufferSubData, buffer, offset, size, data);
|
||||
}
|
||||
void* checkMapBuffer(gnBufferHandle buffer) {
|
||||
loaderLayer* nextLayer = loaderGetNextLayer(buffer->device->instance);
|
||||
if (nextLayer->deviceFunctions._gnMapBuffer == NULL) {
|
||||
@@ -146,6 +149,9 @@ void checkDestroyUniformPool(gnUniformPool pool) {
|
||||
void checkUpdateBufferUniform(gnUniform uniform, gnBufferUniformInfo* bufferInfo) {
|
||||
CHECK_VOID_FUNCTION(uniform->pool->device->instance, _gnUpdateBufferUniform, uniform, bufferInfo);
|
||||
}
|
||||
void checkUpdateStorageUniform(gnUniform uniform, gnStorageUniformInfo* storageInfo) {
|
||||
CHECK_VOID_FUNCTION(uniform->pool->device->instance, _gnUpdateStorageUniform, uniform, storageInfo);
|
||||
}
|
||||
void checkUpdateImageUniform(gnUniform uniform, gnImageUniformInfo* imageInfo) {
|
||||
CHECK_VOID_FUNCTION(uniform->pool->device->instance, _gnUpdateImageUniform, uniform, imageInfo);
|
||||
}
|
||||
|
@@ -24,6 +24,7 @@ void checkDestroySemaphore(gnSemaphoreHandle semaphore);
|
||||
|
||||
gnReturnCode checkCreateBuffer(gnBufferHandle buffer, gnDeviceHandle device, gnBufferInfo info);
|
||||
void checkBufferData(gnBufferHandle buffer, size_t size, void* data);
|
||||
void checkBufferSubData(gnBufferHandle buffer, size_t offset, size_t size, void* data);
|
||||
void* checkMapBuffer(gnBufferHandle buffer);
|
||||
void checkDestroyBuffer(gnBufferHandle buffer);
|
||||
|
||||
@@ -32,6 +33,7 @@ gnUniform* checkUniformPoolAllocateUniforms(gnUniformPool pool, gnUniformAllocat
|
||||
void checkDestroyUniformPool(gnUniformPool pool);
|
||||
|
||||
void checkUpdateBufferUniform(gnUniform uniform, gnBufferUniformInfo* bufferInfo);
|
||||
void checkUpdateStorageUniform(gnUniform uniform, gnStorageUniformInfo* storageInfo);
|
||||
void checkUpdateImageUniform(gnUniform uniform, gnImageUniformInfo* imageInfo);
|
||||
|
||||
gnReturnCode checkCreateTexture(gnTexture texture, gnDevice device, const gnTextureInfo info);
|
||||
|
Reference in New Issue
Block a user