let's try to enable OpenGL by default on macOS

This commit is contained in:
tildearrow 2024-04-10 03:45:17 -05:00
parent 6d8e6a9a55
commit c03a834b24
2 changed files with 10 additions and 8 deletions

View file

@ -67,11 +67,7 @@ else()
endif() endif()
set(WITH_RENDER_SDL_DEFAULT ON) set(WITH_RENDER_SDL_DEFAULT ON)
if (APPLE) set(WITH_RENDER_OPENGL_DEFAULT ON)
set(WITH_RENDER_OPENGL_DEFAULT OFF)
else()
set(WITH_RENDER_OPENGL_DEFAULT ON)
endif()
if (WIN32) if (WIN32)
set(WITH_RENDER_DX11_DEFAULT ON) set(WITH_RENDER_DX11_DEFAULT ON)
set(WITH_RENDER_DX9_DEFAULT ON) set(WITH_RENDER_DX9_DEFAULT ON)
@ -903,6 +899,8 @@ if (WITH_RENDER_OPENGL)
endif() endif()
if (WIN32) if (WIN32)
list(APPEND DEPENDENCIES_LIBRARIES opengl32) list(APPEND DEPENDENCIES_LIBRARIES opengl32)
elseif(APPLE)
list(APPEND DEPENDENCIES_LIBRARIES "-framework OpenGL")
elseif(USE_GLES) elseif(USE_GLES)
list(APPEND DEPENDENCIES_LIBRARIES GLESv2) list(APPEND DEPENDENCIES_LIBRARIES GLESv2)
else() else()

View file

@ -587,11 +587,15 @@ void FurnaceGUIRenderGL::preInit() {
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION,2); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION,2);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION,0); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION,0);
#elif defined(__APPLE__) #elif defined(__APPLE__)
// not recommended...
SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS,SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG); SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS,SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK,SDL_GL_CONTEXT_PROFILE_CORE); SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK,SDL_GL_CONTEXT_PROFILE_CORE);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION,3); if (glVer==2) {
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION,2); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION,2);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION,0);
} else {
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION,3);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION,2);
}
#else #else
SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS,0); SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS,0);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK,SDL_GL_CONTEXT_PROFILE_CORE); SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK,SDL_GL_CONTEXT_PROFILE_CORE);