SDL_CreateGPUDeviceWithProperties - Man Page
Creates a GPU context.
Synopsis
#include <SDL3/SDL_gpu.h> SDL_GPUDevice * SDL_CreateGPUDeviceWithProperties( SDL_PropertiesID props);
Description
These are the supported properties:
· SDL_PROP_GPU_DEVICE_CREATE_DEBUGMODE_BOOLEAN: enable debug mode properties and validations, defaults to true.
· SDL_PROP_GPU_DEVICE_CREATE_PREFERLOWPOWER_BOOLEAN: enable to prefer energy efficiency over maximum GPU performance, defaults to false.
· SDL_PROP_GPU_DEVICE_CREATE_NAME_STRING: the name of the GPU driver to use, if a specific one is desired.
These are the current shader format properties:
· SDL_PROP_GPU_DEVICE_CREATE_SHADERS_PRIVATE_BOOLEAN: The app is able to provide shaders for an NDA platform.
· SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SPIRV_BOOLEAN: The app is able to provide SPIR-V shaders if applicable.
· SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXBC_BOOLEAN: The app is able to provide DXBC shaders if applicable
· SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXIL_BOOLEAN: The app is able to provide DXIL shaders if applicable.
· SDL_PROP_GPU_DEVICE_CREATE_SHADERS_MSL_BOOLEAN: The app is able to provide MSL shaders if applicable.
· SDL_PROP_GPU_DEVICE_CREATE_SHADERS_METALLIB_BOOLEAN: The app is able to provide Metal shader libraries if applicable.
With the D3D12 renderer:
· SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING: the prefix to use for all vertex semantics, default is "TEXCOORD".
Function Parameters
- props
the properties to use.
Return Value
Returns a GPU context on success or NULL on failure; call SDL_GetError() for more information.
Availability
This function is available since SDL 3.2.0.
See Also
SDL_GetGPUShaderFormats(3), SDL_GetGPUDeviceDriver(3), SDL_DestroyGPUDevice(3), SDL_GPUSupportsProperties(3)