Go to file
David Gow b8a52c1237 Vulkan: Make sure validation layer name is in-scope
When enabling the Vulkan validation layers, the 'validationLayerName'
variable technically went out of scope before vkCreateInstance() was
called. While most compilers won't clean up stack variables after random
'if' statements, some will, particularly when optimisation or memory
sanitizers are enabled.

This can lead to vkCreateInstance() segfaulting when
SDL_HINT_RENDER_VULKAN_DEBUG is enabled.

Instead, make the validationLayerName visible throughout the entire
VULKAN_CreateDeviceResources() function.

While we're at it, extract the validation layer name out into a
preprocessor #define, so that we are definitely using the same name in
VULKAN_ValidationLayersFound().

Signed-off-by: David Gow <david@ingeniumdigital.com>
2024-02-25 08:24:43 -08:00
.github ci: update deprecated node.js 16 actions 2024-02-23 21:53:40 +01:00
VisualC Fixed building the Vulkan renderer on Windows with Visual Studio 2024-02-22 17:18:46 -08:00
VisualC-GDK camera: Add sources to Xcode and Visual Studio projects. 2024-02-20 15:56:26 -05:00
VisualC-WinRT camera: Add sources to Xcode and Visual Studio projects. 2024-02-20 15:56:26 -05:00
Xcode camera: Windows support, through the Media Foundation API! 2024-02-20 15:56:26 -05:00
android-project camera: Rewrote Android support. 2024-02-20 15:56:26 -05:00
build-scripts Renamed SDL_HINT_PS2_DYNAMIC_VSYNC SDL_HINT_RENDER_PS2_DYNAMIC_VSYNC 2024-02-12 09:54:33 -08:00
cmake Vulkan Renderer (#9114) 2024-02-22 14:58:11 -08:00
docs Removed SDL_ClearHints() from the public API 2024-02-24 21:07:50 -08:00
include Removed SDL_ClearHints() from the public API 2024-02-24 21:07:50 -08:00
mingw/pkg-support/cmake build: don't add SDL3 subfolder to include path for external projects 2022-11-27 14:33:13 -08:00
src Vulkan: Make sure validation layer name is in-scope 2024-02-25 08:24:43 -08:00
test A second take on HDR support with an SDR white point and HDR headroom 2024-02-21 19:25:49 -08:00
wayland-protocols wayland: Use the preferred order of displays exposed by KDE 2024-01-27 02:10:49 -05:00
.clang-format Commented out syntax that causes Visual Studio 2019 to complain on every edit 2022-12-02 00:43:01 -08:00
.clang-tidy Fix size of memcpy in SDL_AudioDeviceFormatChangedAlreadyLocked 2023-08-05 14:14:45 -04:00
.editorconfig Fixed formatting for Haiku cc files 2023-01-25 03:03:41 -08:00
.gitignore Make Xbox GDK code public (and fix some GDK code rot) (#8844) 2024-01-14 20:31:41 -08:00
.wikiheaders-options sdlwiki: SDL3 advises users to include through 'SDL3/SDL.h' 2023-03-21 02:19:19 +01:00
Android.mk camera: Rewrote Android support. 2024-02-20 15:56:26 -05:00
BUGS.txt Cleaned up a few more Bugzilla mentions. 2021-02-12 14:46:49 -05:00
CMakeLists.txt cmake: X11 is for Video, not Audio 2024-02-24 17:31:48 +01:00
CREDITS.md docs: Moved CREDITS and INSTALL to markdown format. 2023-11-29 12:31:27 -05:00
INSTALL.md docs: Moved CREDITS and INSTALL to markdown format. 2023-11-29 12:31:27 -05:00
LICENSE.txt Updated copyright for 2024 2024-01-01 13:15:26 -08:00
README-SDL.txt More HTTPS changes in the documentation. 2017-02-16 16:52:03 -05:00
README.md docs: Convert everything to Unix-style endlines. 2023-11-29 11:29:57 -05:00
WhatsNew.txt Added the environment variable SDL_LOGGING to control default log output 2024-01-27 19:30:22 -08:00

README.md

Simple DirectMedia Layer (SDL) Version 3.0

https://www.libsdl.org/

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 and Direct3D. It is used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting with README.md. If you are migrating to SDL 3.0 from SDL 2.0, the changes are extensively documented in README-migration.md.

Enjoy!

Sam Lantinga (slouken@libsdl.org)