summaryrefslogtreecommitdiff
path: root/src/gpu/effects/shader_composer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/effects/shader_composer.cc')
-rw-r--r--src/gpu/effects/shader_composer.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/gpu/effects/shader_composer.cc b/src/gpu/effects/shader_composer.cc
index b746f8b..5cd8699 100644
--- a/src/gpu/effects/shader_composer.cc
+++ b/src/gpu/effects/shader_composer.cc
@@ -2,6 +2,7 @@
// It implements the ShaderComposer class.
#include "gpu/effects/shader_composer.h"
+#include "util/asset_manager.h"
#include <set>
#include <sstream>
@@ -86,3 +87,12 @@ ShaderComposer::Compose(const std::vector<std::string>& dependencies,
return ss.str();
}
+
+std::string
+ShaderComposer::Compose(const std::vector<std::string>& dependencies,
+ AssetId main_code_asset_id,
+ const CompositionMap& substitutions) {
+ size_t size;
+ const char* main_code = reinterpret_cast<const char*>(GetAsset(main_code_asset_id, &size));
+ return Compose(dependencies, std::string(main_code, size), substitutions);
+}