summaryrefslogtreecommitdiff
path: root/src/graphicsmanager.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-07-16 21:10:58 +0300
committerAndrei Karas <akaras@inbox.ru>2014-07-16 21:27:20 +0300
commit71a8401df046ac856d3bb02d6f44733890883f44 (patch)
treee37e6c9b47ff4a9c45a41860286a78bd12f61616 /src/graphicsmanager.cpp
parenta82331f46657298d335c36f9276ab3007b327d4b (diff)
downloadmanaplus-71a8401df046ac856d3bb02d6f44733890883f44.tar.gz
manaplus-71a8401df046ac856d3bb02d6f44733890883f44.tar.bz2
manaplus-71a8401df046ac856d3bb02d6f44733890883f44.tar.xz
manaplus-71a8401df046ac856d3bb02d6f44733890883f44.zip
Add max texture size detection for all modes.
Diffstat (limited to 'src/graphicsmanager.cpp')
-rw-r--r--src/graphicsmanager.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/graphicsmanager.cpp b/src/graphicsmanager.cpp
index 3e9701115..81296b1cb 100644
--- a/src/graphicsmanager.cpp
+++ b/src/graphicsmanager.cpp
@@ -485,6 +485,17 @@ void GraphicsManager::initGraphics()
detectPixelSize();
setVideoMode();
}
+#if !defined(ANDROID) && !defined(__APPLE__)
+ const std::string str = config.getStringValue("textureSize");
+ std::vector<int> sizes;
+ splitToIntVector(sizes, str, ',');
+ const size_t pos = static_cast<size_t>(openGLMode);
+ if (sizes.size() <= pos)
+ settings.textureSize = 1024;
+ else
+ settings.textureSize = sizes[pos];
+ logger->log("Detected max texture size: %d", settings.textureSize);
+#endif // !defined(ANDROID) && !defined(__APPLE__)
#endif
}
@@ -1271,7 +1282,8 @@ void GraphicsManager::detectVideoSettings()
if (val != -1)
config.setValue("compresstextures", val);
}
- config.setValue("textureSize", conf.getValueInt("textureSize", 1024));
+ config.setValue("textureSize", conf.getValue("textureSize",
+ "1024,1024,1024"));
config.setValue("testInfo", conf.getValue("testInfo", ""));
delete test;
}