|
From: Lasse Kärkkäi. <tr...@us...> - 2011-02-08 20:42:23
|
Module: performous
Branch: opengl2
Commit: abe0b19de4ba43162c0f0d416328ac4280479f7f
Author: Lasse Karkkainen <tro...@tr...>
Date: Tue Feb 8 21:40:51 2011 +0100
Move shaders to data dir (instead of theme) and make theme file lookup try from there too.
* TODO: Remove getThemePath and only use getPath (that will prefer theme dir if possible)?
---
data/CMakeLists.txt | 3 +++
{themes/default => data}/shaders/3dobject.frag | 0
{themes/default => data}/shaders/3dobject.vert | 0
{themes/default => data}/shaders/core.frag | 0
{themes/default => data}/shaders/core.vert | 0
{themes/default => data}/shaders/dancenote.frag | 0
{themes/default => data}/shaders/dancenote.vert | 0
{themes/default => data}/shaders/stereo3d.geom | 0
game/fs.cc | 11 ++++-------
themes/CMakeLists.txt | 3 ---
10 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
index 6574385..e43e2a5 100644
--- a/data/CMakeLists.txt
+++ b/data/CMakeLists.txt
@@ -22,3 +22,6 @@ install(FILES ${SOUND_FILES} DESTINATION "${SHARE_INSTALL}/sounds/")
file(GLOB BG_FILES "backgrounds/*.svg")
install(FILES ${BG_FILES} DESTINATION "${SHARE_INSTALL}/backgrounds/")
+file(GLOB SHADER_FILES "shaders/*")
+install(FILES ${SHADER_FILES} DESTINATION "${SHARE_INSTALL}/shaders/")
+
diff --git a/themes/default/shaders/3dobject.frag b/data/shaders/3dobject.frag
similarity index 100%
rename from themes/default/shaders/3dobject.frag
rename to data/shaders/3dobject.frag
diff --git a/themes/default/shaders/3dobject.vert b/data/shaders/3dobject.vert
similarity index 100%
rename from themes/default/shaders/3dobject.vert
rename to data/shaders/3dobject.vert
diff --git a/themes/default/shaders/core.frag b/data/shaders/core.frag
similarity index 100%
rename from themes/default/shaders/core.frag
rename to data/shaders/core.frag
diff --git a/themes/default/shaders/core.vert b/data/shaders/core.vert
similarity index 100%
rename from themes/default/shaders/core.vert
rename to data/shaders/core.vert
diff --git a/themes/default/shaders/dancenote.frag b/data/shaders/dancenote.frag
similarity index 100%
rename from themes/default/shaders/dancenote.frag
rename to data/shaders/dancenote.frag
diff --git a/themes/default/shaders/dancenote.vert b/data/shaders/dancenote.vert
similarity index 100%
rename from themes/default/shaders/dancenote.vert
rename to data/shaders/dancenote.vert
diff --git a/themes/default/shaders/stereo3d.geom b/data/shaders/stereo3d.geom
similarity index 100%
rename from themes/default/shaders/stereo3d.geom
rename to data/shaders/stereo3d.geom
diff --git a/game/fs.cc b/game/fs.cc
index 83f48d5..e34a784 100644
--- a/game/fs.cc
+++ b/game/fs.cc
@@ -120,13 +120,10 @@ std::string getThemePath(std::string const& filename) {
std::string theme = config["game/theme"].s();
static const std::string defaultTheme = "default";
if (theme.empty()) theme = defaultTheme;
- // Try current theme and if that fails, try default theme.
- try {
- return getPath(fs::path("themes") / theme / filename);
- } catch (std::runtime_error&) {
- if (theme == defaultTheme) throw;
- return getPath(fs::path("themes") / defaultTheme / filename);
- }
+ // Try current theme and if that fails, try default theme and finally data dir
+ try { return getPath(fs::path("themes") / theme / filename); } catch (std::runtime_error&) {}
+ if (theme == defaultTheme) try { return getPath(fs::path("themes") / defaultTheme / filename); } catch (std::runtime_error&) {}
+ return getPath(filename);
}
bool isThemeResource(fs::path filename){
diff --git a/themes/CMakeLists.txt b/themes/CMakeLists.txt
index d22be10..5a94855 100644
--- a/themes/CMakeLists.txt
+++ b/themes/CMakeLists.txt
@@ -1,6 +1,3 @@
FILE(GLOB THEME_FILES "default/*.ogg" "default/*.svg" "default/*.png" "default/*.bmp" "default/*.obj")
install(FILES ${THEME_FILES} DESTINATION ${SHARE_INSTALL}/themes/default/)
-FILE(GLOB SHADER_FILES "default/shaders/*")
-install(FILES ${SHADER_FILES} DESTINATION ${SHARE_INSTALL}/themes/default/shaders)
-
|