|
@@ -5,6 +5,7 @@
|
|
|
|
|
|
#if defined(_WIN32) || defined(__ANDROID__) || defined(HL_IOS) || defined(HL_TVOS)
|
|
#if defined(_WIN32) || defined(__ANDROID__) || defined(HL_IOS) || defined(HL_TVOS)
|
|
# include <SDL.h>
|
|
# include <SDL.h>
|
|
|
|
+# include <SDL_vulkan.h>
|
|
# include <SDL_syswm.h>
|
|
# include <SDL_syswm.h>
|
|
#else
|
|
#else
|
|
# include <SDL2/SDL.h>
|
|
# include <SDL2/SDL.h>
|
|
@@ -515,12 +516,20 @@ DEFINE_PRIM(_BOOL, hint_value, _BYTES _BYTES);
|
|
|
|
|
|
HL_PRIM SDL_Window *HL_NAME(win_create_ex)(int x, int y, int width, int height, int sdlFlags) {
|
|
HL_PRIM SDL_Window *HL_NAME(win_create_ex)(int x, int y, int width, int height, int sdlFlags) {
|
|
// force window to match device resolution on mobile
|
|
// force window to match device resolution on mobile
|
|
|
|
+ if (sdlFlags & (
|
|
|
|
+#ifdef HL_MAC
|
|
|
|
+ SDL_WINDOW_METAL |
|
|
|
|
+#endif
|
|
|
|
+ SDL_WINDOW_VULKAN ) == 0) {
|
|
|
|
+ sdlFlags |= SDL_WINDOW_OPENGL;
|
|
|
|
+ }
|
|
|
|
+
|
|
#ifdef HL_MOBILE
|
|
#ifdef HL_MOBILE
|
|
SDL_DisplayMode displayMode;
|
|
SDL_DisplayMode displayMode;
|
|
SDL_GetDesktopDisplayMode(0, &displayMode);
|
|
SDL_GetDesktopDisplayMode(0, &displayMode);
|
|
- SDL_Window* win = SDL_CreateWindow("", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, width, height, SDL_WINDOW_OPENGL | SDL_WINDOW_BORDERLESS | sdlFlags);
|
|
|
|
|
|
+ SDL_Window* win = SDL_CreateWindow("", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, width, height, SDL_WINDOW_BORDERLESS | sdlFlags);
|
|
#else
|
|
#else
|
|
- SDL_Window* win = SDL_CreateWindow("", x, y, width, height, SDL_WINDOW_OPENGL | sdlFlags);
|
|
|
|
|
|
+ SDL_Window* win = SDL_CreateWindow("", x, y, width, height, sdlFlags);
|
|
#endif
|
|
#endif
|
|
# ifdef HL_WIN
|
|
# ifdef HL_WIN
|
|
// force window to show even if the debugger force process windows to be hidden
|
|
// force window to show even if the debugger force process windows to be hidden
|