Create a 2D GPU rendering context.
Defined in <SDL3/SDL_render.h>
SDL_Renderer * SDL_CreateGPURenderer(SDL_GPUDevice *device, SDL_Window *window);| SDL_GPUDevice * | device | the GPU device to use with the renderer, or NULL to create a device. | 
| SDL_Window * | window | the window where rendering is displayed, or NULL to create an offscreen renderer. | 
(SDL_Renderer *) Returns a valid rendering context or NULL if there was an error; call SDL_GetError() for more information.
The GPU device to use is passed in as a parameter. If this is NULL, then a device will be created normally and can be retrieved using SDL_GetGPURendererDevice().
The window to use is passed in as a parameter. If this is NULL, then this will become an offscreen renderer. In that case, you should call SDL_SetRenderTarget() to setup rendering to a texture, and then call SDL_RenderPresent() normally to complete drawing a frame.
If this function is called with a valid GPU device, it should be called on the thread that created the device. If this function is called with a valid window, it should be called on the thread that created the window.
This function is available since SDL 3.4.0.