Create a 2D rendering context for a window, with the specified properties.
Defined in <SDL3/SDL_render.h>
SDL_Renderer * SDL_CreateRendererWithProperties(SDL_PropertiesID props);| SDL_PropertiesID | props | the properties to use. |
(SDL_Renderer *) Returns a valid rendering context or NULL if there was an error; call SDL_GetError() for more information.
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:
an SDL_Colorspace value describing the
colorspace for output to the display, defaults to SDL_COLORSPACE_SRGB. The direct3d11,
direct3d12, and metal renderers support SDL_COLORSPACE_SRGB_LINEAR,
which is a linear color space and supports HDR output. If you select SDL_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 by SDL_SetRenderVSync() for the
renderer.With the SDL GPU renderer:
SDL_PROP_RENDERER_CREATE_GPU_SHADERS_SPIRV_BOOLEAN:
the app is able to provide SPIR-V shaders to SDL_GPURenderState, optional.SDL_PROP_RENDERER_CREATE_GPU_SHADERS_DXIL_BOOLEAN:
the app is able to provide DXIL shaders to SDL_GPURenderState, optional.SDL_PROP_RENDERER_CREATE_GPU_SHADERS_MSL_BOOLEAN:
the app is able to provide MSL shaders to SDL_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.This function should only be called on the main thread.
This function is available since SDL 3.2.0.