diff --git a/stepmania/src/arch/LowLevelWindow/LowLevelWindow_X11.cpp b/stepmania/src/arch/LowLevelWindow/LowLevelWindow_X11.cpp index 0e49db96b9..79128668d9 100644 --- a/stepmania/src/arch/LowLevelWindow/LowLevelWindow_X11.cpp +++ b/stepmania/src/arch/LowLevelWindow/LowLevelWindow_X11.cpp @@ -178,6 +178,15 @@ CString LowLevelWindow_X11::TryVideoMode( VideoModeParams p, bool &bNewDeviceOut return ""; // Success } +bool LowLevelWindow_X11::IsSoftwareRenderer( CString &sError ) +{ + if( glXIsDirect( g_X11Display, glXGetCurrentContext() ) ) + return false; + + sError = "Direct rendering is not available."; + return true; +} + void LowLevelWindow_X11::SwapBuffers() { glXSwapBuffers( X11Helper::Dpy, X11Helper::Win ); diff --git a/stepmania/src/arch/LowLevelWindow/LowLevelWindow_X11.h b/stepmania/src/arch/LowLevelWindow/LowLevelWindow_X11.h index 74c9ff551c..9f8eb7b7c6 100644 --- a/stepmania/src/arch/LowLevelWindow/LowLevelWindow_X11.h +++ b/stepmania/src/arch/LowLevelWindow/LowLevelWindow_X11.h @@ -13,6 +13,7 @@ public: void *GetProcAddress(CString s); CString TryVideoMode(VideoModeParams p, bool &bNewDeviceOut); + bool IsSoftwareRenderer( CString &sError ); void SwapBuffers(); VideoModeParams GetActualVideoModeParams() const { return CurrentParams; }