This is the SDL3 wiki. SDL2 is over here!
SDL3 has officially released and is ready for you to start using now.
Need some motivation? Here's a list of New Features that you can enjoy today in SDL3! If you're coming from SDL2 check out the 2 to 3 Migration Guide.
Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL/Direct3D/Metal/Vulkan. It is used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games.
SDL officially supports Windows, macOS, Linux, iOS, and Android, and several other platforms.
SDL is written in C, works natively with C++, and has bindings available for several other languages, including C#, Python, and Rust.
SDL 3.0 (often shortened to "SDL3") is distributed under the zlib license. This license allows you to use SDL freely in any software.
This is the SDL wiki. SDL's main website is libsdl.org.
Source Code | How to download the source code to SDL. |
Installation | How to install SDL on your platform of choice and link your program against it. |
API by Category | Reference documentation for all of SDLs Subsystems can be found here. |
Tutorials | Take a look at some tutorials to guide you through learning SDL. |
Examples | Small programs that each demonstrate a feature of the library. |
Demos | Simple but complete games and apps. |
Frequently Asked Questions | Questions developers often ask when using SDL. |
SDL Communities | Communities you can follow to help and get help with SDL |
There are other libraries that are developed by the SDL team, but aren't part of SDL itself. They are also documented on this wiki:
We hope you find everything you are looking for and enjoy using SDL!
If anything is not addressed somewhere here, feel free to open an issue or submit a pull request.
Enjoy!