summaryrefslogtreecommitdiff
path: root/cnn_v3/src/gbuffer_effect.cc
diff options
context:
space:
mode:
Diffstat (limited to 'cnn_v3/src/gbuffer_effect.cc')
-rw-r--r--cnn_v3/src/gbuffer_effect.cc10
1 files changed, 8 insertions, 2 deletions
diff --git a/cnn_v3/src/gbuffer_effect.cc b/cnn_v3/src/gbuffer_effect.cc
index fb0146e..750188f 100644
--- a/cnn_v3/src/gbuffer_effect.cc
+++ b/cnn_v3/src/gbuffer_effect.cc
@@ -4,6 +4,7 @@
#include "gbuffer_effect.h"
#include "3d/object.h"
#include "gpu/gpu.h"
+#include "gpu/shader_composer.h"
#include "util/fatal_error.h"
#include "util/mini_math.h"
#include <cstring>
@@ -390,9 +391,12 @@ void GBufferEffect::create_raster_pipeline() {
return; // Asset not loaded yet; pipeline creation deferred.
}
+ const std::string composed =
+ ShaderComposer::Get().Compose({"common_uniforms"}, src);
+
WGPUShaderSourceWGSL wgsl_src = {};
wgsl_src.chain.sType = WGPUSType_ShaderSourceWGSL;
- wgsl_src.code = str_view(src);
+ wgsl_src.code = str_view(composed.c_str());
WGPUShaderModuleDescriptor shader_desc = {};
shader_desc.nextInChain = &wgsl_src.chain;
@@ -466,9 +470,11 @@ void GBufferEffect::create_pack_pipeline() {
return;
}
+ const std::string composed = ShaderComposer::Get().Compose({}, src);
+
WGPUShaderSourceWGSL wgsl_src = {};
wgsl_src.chain.sType = WGPUSType_ShaderSourceWGSL;
- wgsl_src.code = str_view(src);
+ wgsl_src.code = str_view(composed.c_str());
WGPUShaderModuleDescriptor shader_desc = {};
shader_desc.nextInChain = &wgsl_src.chain;