From 5f76be9380048bcaf708974177579086043704f2 Mon Sep 17 00:00:00 2001 From: numzero Date: Mon, 6 Mar 2023 14:10:05 +0300 Subject: [PATCH] Restore isDriverSupported, but in a cpp file --- include/IrrlichtDevice.h | 4 +++- source/Irrlicht/Irrlicht.cpp | 20 ++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/include/IrrlichtDevice.h b/include/IrrlichtDevice.h index 07d4f9f..c6a1978 100644 --- a/include/IrrlichtDevice.h +++ b/include/IrrlichtDevice.h @@ -14,6 +14,7 @@ #include "ICursorControl.h" #include "ITimer.h" #include "IOSOperator.h" +#include "IrrCompileConfig.h" namespace irr { @@ -34,6 +35,7 @@ namespace irr namespace video { class IContextManager; + extern "C" IRRLICHT_API bool IRRCALLCONV isDriverSupported(E_DRIVER_TYPE driver); } // end namespace video //! The Irrlicht device. You can create it with createDevice() or createDeviceEx(). @@ -310,7 +312,7 @@ namespace irr for a configuration requested when creating the device. */ static bool isDriverSupported(video::E_DRIVER_TYPE driver) { - return true; + return video::isDriverSupported(driver); } }; diff --git a/source/Irrlicht/Irrlicht.cpp b/source/Irrlicht/Irrlicht.cpp index 826414f..50348e7 100644 --- a/source/Irrlicht/Irrlicht.cpp +++ b/source/Irrlicht/Irrlicht.cpp @@ -113,6 +113,26 @@ namespace core namespace video { SMaterial IdentityMaterial; + + extern "C" IRRLICHT_API bool IRRCALLCONV isDriverSupported(E_DRIVER_TYPE driver) + { + switch (driver) { + case EDT_NULL: return true; +#ifdef _IRR_COMPILE_WITH_OPENGL_ + case EDT_OPENGL: return true; +#endif +#ifdef _IRR_COMPILE_WITH_OGLES1_ + case EDT_OGLES1: return true; +#endif +#ifdef _IRR_COMPILE_WITH_OGLES2_ + case EDT_OGLES2: return true; +#endif +#ifdef _IRR_COMPILE_WITH_WEBGL1_ + case EDT_WEBGL1: return true; +#endif + default: return false; + } + } } } // end namespace irr -- 2.44.0