aboutsummaryrefslogtreecommitdiff
path: root/src/client
diff options
context:
space:
mode:
Diffstat (limited to 'src/client')
-rw-r--r--src/client/renderingengine.cpp29
-rw-r--r--src/client/renderingengine.h7
2 files changed, 13 insertions, 23 deletions
diff --git a/src/client/renderingengine.cpp b/src/client/renderingengine.cpp
index 558a9dd7a..037ede074 100644
--- a/src/client/renderingengine.cpp
+++ b/src/client/renderingengine.cpp
@@ -105,7 +105,7 @@ RenderingEngine::RenderingEngine(IEventReceiver *receiver)
u32 i;
for (i = 0; i != drivers.size(); i++) {
if (!strcasecmp(driverstring.c_str(),
- RenderingEngine::getVideoDriverName(drivers[i]))) {
+ RenderingEngine::getVideoDriverInfo(drivers[i]).name.c_str())) {
driverType = drivers[i];
break;
}
@@ -555,28 +555,15 @@ void RenderingEngine::draw_scene(video::SColor skycolor, bool show_hud,
core->draw(skycolor, show_hud, show_minimap, draw_wield_tool, draw_crosshair);
}
-const char *RenderingEngine::getVideoDriverName(irr::video::E_DRIVER_TYPE type)
+const VideoDriverInfo &RenderingEngine::getVideoDriverInfo(irr::video::E_DRIVER_TYPE type)
{
- static const std::unordered_map<irr::video::E_DRIVER_TYPE,const std::string> driver_ids = {
- {irr::video::EDT_NULL, "null"},
- {irr::video::EDT_OPENGL, "opengl"},
- {irr::video::EDT_OGLES1, "ogles1"},
- {irr::video::EDT_OGLES2, "ogles2"},
+ static const std::unordered_map<irr::video::E_DRIVER_TYPE,VideoDriverInfo> driver_info_map = {
+ {irr::video::EDT_NULL, {"null", "NULL Driver"}},
+ {irr::video::EDT_OPENGL, {"opengl", "OpenGL"}},
+ {irr::video::EDT_OGLES1, {"ogles1", "OpenGL ES1"}},
+ {irr::video::EDT_OGLES2, {"ogles2", "OpenGL ES2"}},
};
-
- return driver_ids.at(type).c_str();
-}
-
-const char *RenderingEngine::getVideoDriverFriendlyName(irr::video::E_DRIVER_TYPE type)
-{
- static const std::unordered_map<irr::video::E_DRIVER_TYPE,const std::string> driver_names = {
- {irr::video::EDT_NULL, "NULL Driver"},
- {irr::video::EDT_OPENGL, "OpenGL"},
- {irr::video::EDT_OGLES1, "OpenGL ES1"},
- {irr::video::EDT_OGLES2, "OpenGL ES2"},
- };
-
- return driver_names.at(type).c_str();
+ return driver_info_map.at(type);
}
#ifndef __ANDROID__
diff --git a/src/client/renderingengine.h b/src/client/renderingengine.h
index 5299222e2..6f104bba9 100644
--- a/src/client/renderingengine.h
+++ b/src/client/renderingengine.h
@@ -29,6 +29,10 @@ with this program; if not, write to the Free Software Foundation, Inc.,
// include the shadow mapper classes too
#include "client/shadows/dynamicshadowsrender.h"
+struct VideoDriverInfo {
+ std::string name;
+ std::string friendly_name;
+};
class ITextureSource;
class Camera;
@@ -49,8 +53,7 @@ public:
video::IVideoDriver *getVideoDriver() { return driver; }
- static const char *getVideoDriverName(irr::video::E_DRIVER_TYPE type);
- static const char *getVideoDriverFriendlyName(irr::video::E_DRIVER_TYPE type);
+ static const VideoDriverInfo &getVideoDriverInfo(irr::video::E_DRIVER_TYPE type);
static float getDisplayDensity();
static v2u32 getDisplaySize();