From 92504b10cc900e87ea75b96429fde3432f8ca9d0 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Sun, 13 Nov 2005 18:55:30 +0000 Subject: [PATCH] LowLevelWindow_Win32::IsSoftwareRenderer --- .../src/arch/LowLevelWindow/LowLevelWindow_Win32.cpp | 12 ++++++++++++ .../src/arch/LowLevelWindow/LowLevelWindow_Win32.h | 1 + 2 files changed, 13 insertions(+) diff --git a/stepmania/src/arch/LowLevelWindow/LowLevelWindow_Win32.cpp b/stepmania/src/arch/LowLevelWindow/LowLevelWindow_Win32.cpp index 67e04a89fa..ae940368b9 100644 --- a/stepmania/src/arch/LowLevelWindow/LowLevelWindow_Win32.cpp +++ b/stepmania/src/arch/LowLevelWindow/LowLevelWindow_Win32.cpp @@ -5,6 +5,8 @@ #include "RageUtil.h" #include "RageLog.h" +#include + static PIXELFORMATDESCRIPTOR g_CurrentPixelFormat; static HGLRC g_HGLRC = NULL; @@ -211,6 +213,16 @@ CString LowLevelWindow_Win32::TryVideoMode( VideoModeParams p, bool &bNewDeviceO return CString(); // we set the video mode successfully } +bool LowLevelWindow_Win32::IsSoftwareRenderer( CString &sError ) +{ + if( strcmp((const char*)glGetString(GL_VENDOR),"Microsoft Corporation") && + strcmp((const char*)glGetString(GL_RENDERER),"GDI Generic") ) + return false; + + sError = "OpenGL hardware acceleration is not available."; + return true; +} + void LowLevelWindow_Win32::SwapBuffers() { ::SwapBuffers( GraphicsWindow::GetHDC() ); diff --git a/stepmania/src/arch/LowLevelWindow/LowLevelWindow_Win32.h b/stepmania/src/arch/LowLevelWindow/LowLevelWindow_Win32.h index 0a25443087..19ec71faf9 100644 --- a/stepmania/src/arch/LowLevelWindow/LowLevelWindow_Win32.h +++ b/stepmania/src/arch/LowLevelWindow/LowLevelWindow_Win32.h @@ -10,6 +10,7 @@ public: ~LowLevelWindow_Win32(); void *GetProcAddress( CString s ); CString TryVideoMode( VideoModeParams p, bool &bNewDeviceOut ); + bool IsSoftwareRenderer( CString &sError ); void SwapBuffers(); void Update();