Sync SDL3 wiki -> header

This commit is contained in:
SDL Wiki Bot 2024-01-08 01:02:25 +00:00
parent 1a13dae219
commit 4d5bffc323
2 changed files with 339 additions and 0 deletions

View file

@ -256,6 +256,31 @@ extern DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRenderer(SDL_Window *window, co
* \sa SDL_DestroyRenderer
* \sa SDL_GetRendererInfo
*/
/**
* Create a 2D rendering context for a window, with the specified properties.
*
* These are the supported properties:
*
* - "window" (pointer) - the window where rendering is displayed
* - "surface" (pointer) - the surface where rendering is displayed, if you
* want a software renderer without a window
* - "name" (string) - the name of the rendering driver to use, if a specific
* one is desired
* - "present_vsync" (boolean) - true if you want present synchronized with
* the refresh rate
*
* \param props the properties to use
* \returns a valid rendering context or NULL if there was an error; call
* SDL_GetError() for more information.
*
* \since This function is available since SDL 3.0.0.
*
* \sa SDL_CreateRenderer
* \sa SDL_CreateSoftwareRenderer
* \sa SDL_DestroyRenderer
* \sa SDL_GetRendererInfo
*/
extern DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRendererWithProperties(SDL_PropertiesID props);
/**
@ -337,6 +362,28 @@ extern DECLSPEC int SDLCALL SDL_GetRendererInfo(SDL_Renderer *renderer, SDL_Rend
* \sa SDL_GetProperty
* \sa SDL_SetProperty
*/
/**
* Get the properties associated with a renderer.
*
* The following read-only properties are provided by SDL:
*
* ```
* "SDL.renderer.d3d9.device" (pointer) - the IDirect3DDevice9 associated with the renderer
* "SDL.renderer.d3d11.device" (pointer) - the ID3D11Device associated with the renderer
* "SDL.renderer.d3d12.device" (pointer) - the ID3D12Device associated with the renderer
* "SDL.renderer.d3d12.command_queue" (pointer) - the ID3D12CommandQueue associated with the renderer
* ```
*
* \param renderer the rendering context
* \returns a valid property ID on success or 0 on failure; call
* SDL_GetError() for more information.
*
* \since This function is available since SDL 3.0.0.
*
* \sa SDL_GetProperty
* \sa SDL_SetProperty
*/
extern DECLSPEC SDL_PropertiesID SDLCALL SDL_GetRendererProperties(SDL_Renderer *renderer);
/**
@ -481,6 +528,73 @@ extern DECLSPEC SDL_Texture *SDLCALL SDL_CreateTextureFromSurface(SDL_Renderer *
* \sa SDL_QueryTexture
* \sa SDL_UpdateTexture
*/
/**
* Create a texture for a rendering context with the specified properties.
*
* These are the supported properties:
*
* - "format" (number) - one of the enumerated values in SDL_PixelFormatEnum,
* defaults to the best RGBA format for the renderer
* - "access" (number) - one of the enumerated values in SDL_TextureAccess,
* defaults to SDL_TEXTUREACCESS_STATIC
* - "width" (number) - the width of the texture in pixels, required
* - "height" (number) - the height of the texture in pixels, required
*
* With the direct3d11 renderer:
*
* - "d3d11.texture" (pointer) - the ID3D11Texture2D associated with the
* texture, if you want to wrap an existing texture.
* - "d3d11.texture_u" (pointer) - the ID3D11Texture2D associated with the U
* plane of a YUV texture, if you want to wrap an existing texture.
* - "d3d11.texture_v" (pointer) - the ID3D11Texture2D associated with the V
* plane of a YUV texture, if you want to wrap an existing texture.
*
* With the direct3d12 renderer:
*
* - "d3d12.texture" (pointer) - the ID3D12Resource associated with the
* texture, if you want to wrap an existing texture.
* - "d3d12.texture_u" (pointer) - the ID3D12Resource associated with the U
* plane of a YUV texture, if you want to wrap an existing texture.
* - "d3d12.texture_v" (pointer) - the ID3D12Resource associated with the V
* plane of a YUV texture, if you want to wrap an existing texture.
*
* With the opengl renderer:
*
* - "opengl.texture" (number) - the GLuint texture associated with the
* texture, if you want to wrap an existing texture.
* - "opengl.texture_uv" (number) - the GLuint texture associated with the UV
* plane of an NV12 texture, if you want to wrap an existing texture.
* - "opengl.texture_u" (number) - the GLuint texture associated with the U
* plane of a YUV texture, if you want to wrap an existing texture.
* - "opengl.texture_v" (number) - the GLuint texture associated with the V
* plane of a YUV texture, if you want to wrap an existing texture.
*
* With the opengles2 renderer:
*
* - "opengles2.texture" (number) - the GLuint texture associated with the
* texture, if you want to wrap an existing texture.
* - "opengles2.texture_uv" (number) - the GLuint texture associated with the
* UV plane of an NV12 texture, if you want to wrap an existing texture.
* - "opengles2.texture_u" (number) - the GLuint texture associated with the U
* plane of a YUV texture, if you want to wrap an existing texture.
* - "opengles2.texture_v" (number) - the GLuint texture associated with the V
* plane of a YUV texture, if you want to wrap an existing texture.
*
* \param renderer the rendering context
* \param props the properties to use
* \returns a pointer to the created texture or NULL if no rendering context
* was active, the format was unsupported, or the width or height
* were out of range; call SDL_GetError() for more information.
*
* \since This function is available since SDL 3.0.0.
*
* \sa SDL_CreateTextureFromSurface
* \sa SDL_CreateTexture
* \sa SDL_DestroyTexture
* \sa SDL_QueryTexture
* \sa SDL_UpdateTexture
*/
extern DECLSPEC SDL_Texture *SDLCALL SDL_CreateTextureWithProperties(SDL_Renderer *renderer, SDL_PropertiesID props);
/**
@ -527,6 +641,65 @@ extern DECLSPEC SDL_Texture *SDLCALL SDL_CreateTextureWithProperties(SDL_Rendere
* \sa SDL_GetProperty
* \sa SDL_SetProperty
*/
/**
* Get the properties associated with a texture.
*
* The following read-only properties are provided by SDL:
*
* With the direct3d11 renderer:
*
* - "SDL.texture.d3d11.texture" (pointer) - the ID3D11Texture2D associated
* with the texture
* - "SDL.texture.d3d11.texture_u" (pointer) - the ID3D11Texture2D associated
* with the U plane of a YUV texture
* - "SDL.texture.d3d11.texture_v" (pointer) - the ID3D11Texture2D associated
* with the V plane of a YUV texture
*
* With the direct3d12 renderer:
*
* - "SDL.texture.d3d12.texture" (pointer) - the ID3D12Resource associated
* with the texture
* - "SDL.texture.d3d12.texture_u" (pointer) - the ID3D12Resource associated
* with the U plane of a YUV texture
* - "SDL.texture.d3d12.texture_v" (pointer) - the ID3D12Resource associated
* with the V plane of a YUV texture
*
* With the opengl renderer:
*
* - "SDL.texture.opengl.texture" (number) - the GLuint texture associated
* with the texture
* - "SDL.texture.opengl.texture_uv" (number) - the GLuint texture associated
* with the UV plane of an NV12 texture
* - "SDL.texture.opengl.texture_u" (number) - the GLuint texture associated
* with the U plane of a YUV texture
* - "SDL.texture.opengl.texture_v" (number) - the GLuint texture associated
* with the V plane of a YUV texture
* - "SDL.texture.opengl.tex_w" (float) - the texture coordinate width of the
* texture (0.0 - 1.0)
* - "SDL.texture.opengl.tex_h" (float) - the texture coordinate height of the
* texture (0.0 - 1.0)
*
* With the opengles2 renderer:
*
* - "SDL.texture.opengles2.texture" (number) - the GLuint texture associated
* with the texture
* - "SDL.texture.opengles2.texture_uv" (number) - the GLuint texture
* associated with the UV plane of an NV12 texture
* - "SDL.texture.opengles2.texture_u" (number) - the GLuint texture
* associated with the U plane of a YUV texture
* - "SDL.texture.opengles2.texture_v" (number) - the GLuint texture
* associated with the V plane of a YUV texture
*
* \param texture the texture to query
* \returns a valid property ID on success or 0 on failure; call
* SDL_GetError() for more information.
*
* \since This function is available since SDL 3.0.0.
*
* \sa SDL_GetProperty
* \sa SDL_SetProperty
*/
extern DECLSPEC SDL_PropertiesID SDLCALL SDL_GetTextureProperties(SDL_Texture *texture);
/**