summaryrefslogtreecommitdiffstats
path: root/src/platform_sdl.c
diff options
context:
space:
mode:
authorClément Sibille <clements@lisible.xyz>2025-03-25 08:45:55 +0100
committerClément Sibille <clements@lisible.xyz>2025-03-25 08:45:55 +0100
commit6017db0069977ae85e698a1234f4a2b7632ee495 (patch)
tree8d78b90484fa1f8643356689886be068ae12011f /src/platform_sdl.c
parenta33f692a0a0d3d4210044bdd93ec6d067a17c8b5 (diff)
Add support for swapchain recreation
Diffstat (limited to 'src/platform_sdl.c')
-rw-r--r--src/platform_sdl.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/platform_sdl.c b/src/platform_sdl.c
index 281ccb5..5cc6032 100644
--- a/src/platform_sdl.c
+++ b/src/platform_sdl.c
@@ -12,8 +12,9 @@ bool vgltf_platform_init(struct vgltf_platform *platform) {
constexpr char WINDOW_TITLE[] = "VisibleGLTF";
constexpr int WINDOW_WIDTH = 800;
constexpr int WINDOW_HEIGHT = 600;
- SDL_Window *window = SDL_CreateWindow(WINDOW_TITLE, WINDOW_WIDTH,
- WINDOW_HEIGHT, SDL_WINDOW_VULKAN);
+ SDL_Window *window =
+ SDL_CreateWindow(WINDOW_TITLE, WINDOW_WIDTH, WINDOW_HEIGHT,
+ SDL_WINDOW_VULKAN | SDL_WINDOW_RESIZABLE);
if (!window) {
VGLTF_LOG_ERR("SDL window creation failed: %s", SDL_GetError());
goto quit_sdl;
@@ -105,6 +106,11 @@ bool vgltf_platform_poll_event(struct vgltf_platform *platform,
event->type = VGLTF_EVENT_KEY_DOWN;
event->key.key = vgltf_key_from_sdl_keycode(sdl_event.key.key);
break;
+ case SDL_EVENT_WINDOW_RESIZED:
+ event->type = VGLTF_EVENT_WINDOW_RESIZED;
+ event->window_resized.width = sdl_event.display.data1;
+ event->window_resized.height = sdl_event.display.data2;
+ break;
default:
event->type = VGLTF_EVENT_UNKNOWN;
break;
Go back to lisible.xyz