SDL3 (aka Simple DirectMedia Layer 3) is the latest major version (released January 2025 as v3.2.0) of the open-source, cross-platform multimedia development library SDL—succeeding SDL 2—and is designed for building games, emulators, multimedia apps, and more.
What’s new in SDL3?
Here are the key improvements introduced in SDL3:
Modern GPU API: Simplified access to 3D rendering and GPU compute across platforms
Dialog & Filesystem APIs: Native system file dialogs and directory management, plus built-in globbing
Storage API: Abstract interface for platform-specific storage paths—ideal for game data, settings, etc.
Camera & Pen Support: Built-in support for webcams and drawing tablets (e.g., Wacom, Apple Pencil)
Audio Redesign: Includes logical devices, audio streams with resampling/pitch control, and automatic device migration
Improved Input & High-DPI: Better keyboard handling, customizable virtual keyboards on mobile, and robust Hi-DPI support
New Utility APIs: Properties (name/value dictionaries), process spawning, clipboard enhancements, app metadata, colorspace support, and more
Here you can find a collection of SDL3 tutorials ranging from beginning to expert level. SDL3 is nice, because it’s multiplatforms, and it can use DirectX or OpenGL, I mainly use it on Windows and Mac, but you also have an installation tutorial on linux. I tried to focus on original content you usually don’t found elsewhere. Most of my tutorial are code heavy, I tried to used an example to have something working at the end of the tutorial.
I will try to explain the new things in SDL3 compared to SDL2, what possible and what not.