pub unsafe extern "C" fn SDL_CreateRendererWithProperties(
props: SDL_PropertiesID,
) -> *mut SDL_RendererExpand description
Create a 2D rendering context for a window, with the specified properties.
These are the supported properties:
SDL_PROP_RENDERER_CREATE_NAME_STRING: the name of the rendering driver to use, if a specific one is desiredSDL_PROP_RENDERER_CREATE_WINDOW_POINTER: the window where rendering is displayed, required if this isn’t a software renderer using a surfaceSDL_PROP_RENDERER_CREATE_SURFACE_POINTER: the surface where rendering is displayed, if you want a software renderer without a windowSDL_PROP_RENDERER_CREATE_OUTPUT_COLORSPACE_NUMBER: anSDL_Colorspacevalue describing the colorspace for output to the display, defaults toSDL_COLORSPACE_SRGB. The direct3d11, direct3d12, and metal renderers supportSDL_COLORSPACE_SRGB_LINEAR, which is a linear color space and supports HDR output. If you selectSDL_COLORSPACE_SRGB_LINEAR, drawing still uses the sRGB colorspace, but values can go beyond 1.0 and float (linear) format textures can be used for HDR content.SDL_PROP_RENDERER_CREATE_PRESENT_VSYNC_NUMBER: non-zero if you want present synchronized with the refresh rate. This property can take any value that is supported bySDL_SetRenderVSync()for the renderer.
With the SDL GPU renderer (since SDL 3.4.0):
SDL_PROP_RENDERER_CREATE_GPU_DEVICE_POINTER: the device to use with the renderer, optional.SDL_PROP_RENDERER_CREATE_GPU_SHADERS_SPIRV_BOOLEAN: the app is able to provide SPIR-V shaders toSDL_GPURenderState, optional.SDL_PROP_RENDERER_CREATE_GPU_SHADERS_DXIL_BOOLEAN: the app is able to provide DXIL shaders toSDL_GPURenderState, optional.SDL_PROP_RENDERER_CREATE_GPU_SHADERS_MSL_BOOLEAN: the app is able to provide MSL shaders toSDL_GPURenderState, optional.
With the vulkan renderer:
SDL_PROP_RENDERER_CREATE_VULKAN_INSTANCE_POINTER: the VkInstance to use with the renderer, optional.SDL_PROP_RENDERER_CREATE_VULKAN_SURFACE_NUMBER: the VkSurfaceKHR to use with the renderer, optional.SDL_PROP_RENDERER_CREATE_VULKAN_PHYSICAL_DEVICE_POINTER: the VkPhysicalDevice to use with the renderer, optional.SDL_PROP_RENDERER_CREATE_VULKAN_DEVICE_POINTER: the VkDevice to use with the renderer, optional.SDL_PROP_RENDERER_CREATE_VULKAN_GRAPHICS_QUEUE_FAMILY_INDEX_NUMBER: the queue family index used for rendering.SDL_PROP_RENDERER_CREATE_VULKAN_PRESENT_QUEUE_FAMILY_INDEX_NUMBER: the queue family index used for presentation.
§Parameters
props: the properties to use.
§Return value
Returns a valid rendering context or NULL if there was an error; call
SDL_GetError() for more information.
§Thread safety
This function should only be called on the main thread.
§Availability
This function is available since SDL 3.2.0.