SDL_CreateGPUDeviceWithProperties - Man Page

Creates a GPU context.

Header File

Defined in SDL3/SDL_gpu.h

Synopsis

#include "SDL3/SDL.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

( SDL_GPUDevice
*) 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

·(3), SDL_GetGPUShaderFormats(3), ·(3), SDL_GetGPUDeviceDriver(3), ·(3), SDL_DestroyGPUDevice(3), ·(3), SDL_GPUSupportsProperties(3)

Referenced By

SDL_GPUSupportsProperties(3).

SDL 3.2.2 Simple Directmedia Layer SDL3 FUNCTIONS