Attempted to use meson but the wrap only uses vulkan and not opengl

This commit is contained in:
Warwick 2025-06-18 09:34:26 +01:00
parent 05f71170dc
commit fafa5221ac
2 changed files with 17 additions and 15 deletions

View file

@ -1,12 +1,12 @@
project('webgpu', 'c', project('opengl', 'c',
default_options: 'default_library=static') default_options: 'default_library=static')
vulkan_dep = dependency('vulkan-headers', fallback: ['vulkan-headers', 'vulkan_headers_dep']) #vulkan_dep = dependency('vulkan-headers', fallback: ['vulkan-headers', 'vulkan_headers_dep'])
sdl3_deps = [dependency('sdl3'), dependency('sdl3_image')] sdl3_deps = [dependency('sdl3'), dependency('sdl3_image')]
cglm_dep = dependency('cglm') opengl_deps = [dependency('glew'), dependency('gl'), dependency('cglm')]
wgpu_native_dep = dependency('wgpu-native') #wgpu_native_dep = dependency('wgpu-native')
executable('webgpu', 'src/main.c', executable('opengl', 'src/main.c',
win_subsystem: 'windows', win_subsystem: 'windows',
dependencies: [sdl3_deps, cglm_dep, wgpu_native_dep, vulkan_dep] dependencies: [sdl3_deps, opengl_deps ]
) )

View file

@ -2,6 +2,7 @@
#include "SDL3/SDL_log.h" #include "SDL3/SDL_log.h"
#include "SDL3/SDL_render.h" #include "SDL3/SDL_render.h"
#include "SDL3/SDL_video.h" #include "SDL3/SDL_video.h"
#include <stdlib.h>
int main(int argc, char *argv[]) { int main(int argc, char *argv[]) {
SDL_Window *window; SDL_Window *window;
@ -11,14 +12,19 @@ int main(int argc, char *argv[]) {
if (!SDL_Init(SDL_INIT_VIDEO)) { if (!SDL_Init(SDL_INIT_VIDEO)) {
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Couldn't initialize SDL: %s", SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Couldn't initialize SDL: %s",
SDL_GetError()); SDL_GetError());
return 3; return EXIT_FAILURE;
} }
if (!SDL_CreateWindowAndRenderer("Hello SDL3", 320, 240, SDL_WINDOW_RESIZABLE, SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3);
&window, &renderer)) { SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 3);
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 24);
window = SDL_CreateWindow("Hello SDL3", 320, 240, SDL_WINDOW_OPENGL);
if (!window) {
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, SDL_LogError(SDL_LOG_CATEGORY_APPLICATION,
"Couldn't create window and renderer: %s", SDL_GetError()); "Couldn't create window and renderer: %s", SDL_GetError());
return 3; return EXIT_FAILURE;
} }
while (1) { while (1) {
@ -26,15 +32,11 @@ int main(int argc, char *argv[]) {
if (event.type == SDL_EVENT_QUIT) { if (event.type == SDL_EVENT_QUIT) {
break; break;
} }
SDL_SetRenderDrawColor(renderer, 0x00, 0x00, 0x00, 0x00);
SDL_RenderClear(renderer);
SDL_RenderPresent(renderer);
} }
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window); SDL_DestroyWindow(window);
SDL_Quit(); SDL_Quit();
return 0; return EXIT_SUCCESS;
} }