SDL's 2D Render API Getting Improved With New Batching System
Written by Michael Larabel in Linux Gaming on 25 September 2018 at 11:20 AM EDT. 5 Comments
Prolific Linux game porter/developer Ryan Gordon has been tackling improvements to the SDL2 library's 2D rendering code with the introduction of a batching system.

With the current SDL2 library when using its render API, calls are immediately dispatched where as with this batching system the draw requests are stored in batches and then dispatched to the GPU when needed. Those batches are sent to the GPU when needed via SDL_RenderPresent or other relevant operations.

This batching leads to more efficient usage but can be toggled via the SDL API since this batching system could cause problems if the application is also using the underlying graphics API directly, among other potential complexities

Ryan merged this initial render batching system code today in what will eventually become SDL 2.0.9.

Ryan's rendering code rework has also led to significant optimizations for the OpenGL ES renderer back-end, moving the OpenGL / OpenGL ES / Metal code over to this new batching system, and also adding some new high-level features. Some of those other higher-level changes to the SDL2 render code are outlined in this commit.
Related News
About The Author
Author picture

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter or contacted via

Popular News This Week