summaryrefslogtreecommitdiffstats
path: root/src/platform_sdl.c
diff options
context:
space:
mode:
authorClément Sibille <clements@lisible.xyz>2025-03-16 19:13:09 +0100
committerClément Sibille <clements@lisible.xyz>2025-03-18 21:25:10 +0100
commitcb74ffacedb3c1bc4a5398d665d1f4dc12f69a4a (patch)
tree23c91e34fd0a5dafb47beac7e7e0c6f6bd26457f /src/platform_sdl.c
parent038c0c44d26a45554e3cc6257bc67d3fecb291cd (diff)
Add the renderer's foundations
Diffstat (limited to 'src/platform_sdl.c')
-rw-r--r--src/platform_sdl.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/platform_sdl.c b/src/platform_sdl.c
index 27ed4c3..281ccb5 100644
--- a/src/platform_sdl.c
+++ b/src/platform_sdl.c
@@ -1,6 +1,7 @@
#include "log.h"
#include "platform.h"
#include "platform_sdl.h"
+#include <SDL3/SDL_vulkan.h>
bool vgltf_platform_init(struct vgltf_platform *platform) {
if (!SDL_Init(SDL_INIT_VIDEO)) {
@@ -111,3 +112,19 @@ bool vgltf_platform_poll_event(struct vgltf_platform *platform,
}
return pending_events;
}
+bool vgltf_platform_get_window_size(struct vgltf_platform *platform,
+ struct vgltf_window_size *window_size) {
+ return SDL_GetWindowSize(platform->window, &window_size->width,
+ &window_size->height);
+}
+char const *const *
+vgltf_platform_get_vulkan_instance_extensions(struct vgltf_platform *platform,
+ uint32_t *count) {
+ (void)platform;
+ return SDL_Vulkan_GetInstanceExtensions(count);
+}
+bool vgltf_platform_create_vulkan_surface(struct vgltf_platform *platform,
+ VkInstance instance,
+ VkSurfaceKHR *surface) {
+ return SDL_Vulkan_CreateSurface(platform->window, instance, nullptr, surface);
+}
Go back to lisible.xyz