Provided by: libsdl3-doc_3.2.8+ds-1_all 

NAME
SDL_CreateGPUBuffer - Creates a buffer object to be used in graphics or compute workflows.
HEADER FILE
Defined in SDL3/SDL_gpu.h
SYNOPSIS
#include "SDL3/SDL.h"
SDL_GPUBuffer * SDL_CreateGPUBuffer(
SDL_GPUDevice *device,
const SDL_GPUBufferCreateInfo *createinfo);
DESCRIPTION
The contents of this buffer are undefined until data is written to the buffer.
Note that certain combinations of usage flags are invalid. For example, a buffer cannot have both the
VERTEX and INDEX flags.
If you use a STORAGE flag, the data in the buffer must respect std140 layout conventions. In practical
terms this means you must ensure that vec3 and vec4 fields are 16-byte aligned.
For better understanding of underlying concepts and memory management with SDL GPU API, you may refer
this blog post ⟨https://moonside.www:lenstrwww:splitstr:nwww:splitstr:r[char46]games/posts/
sdl-gpu-concepts-cycling/⟩
.
There are optional properties that can be provided through props . These are the supported properties:
• SDL_PROP_GPU_BUFFER_CREATE_NAME_STRING :
a name that can be displayed in debugging tools.
FUNCTION PARAMETERS
device a GPU Context.
createinfo
a struct describing the state of the buffer to create.
RETURN VALUE
( SDL_GPUBuffer
*) Returns a buffer object on success, or NULL on failure; call SDL_GetError () for more information.
AVAILABILITY
This function is available since SDL 3.2.0.
SEE ALSO
•(3), SDL_UploadToGPUBuffer(3), •(3), SDL_DownloadFromGPUBuffer(3), •(3), SDL_CopyGPUBufferToBuffer(3),
•(3), SDL_BindGPUVertexBuffers(3), •(3), SDL_BindGPUIndexBuffer(3), •(3),
SDL_BindGPUVertexStorageBuffers(3), •(3), SDL_BindGPUFragmentStorageBuffers(3), •(3),
SDL_DrawGPUPrimitivesIndirect(3), •(3), SDL_DrawGPUIndexedPrimitivesIndirect(3), •(3),
SDL_BindGPUComputeStorageBuffers(3), •(3), SDL_DispatchGPUComputeIndirect(3), •(3),
SDL_ReleaseGPUBuffer(3)
Simple Directmedia Layer SDL 3.2.8 SDL_CreateGPUBuffer(3)