From 16c2cdce6ad1d89d3c537f2c2cff743449925125 Mon Sep 17 00:00:00 2001 From: skal Date: Sun, 8 Feb 2026 08:33:55 +0100 Subject: feat(platform): Centralize platform-specific WebGPU code and improve shader composition --- src/gpu/effects/shader_composer.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/gpu/effects/shader_composer.cc') 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 #include @@ -86,3 +87,12 @@ ShaderComposer::Compose(const std::vector& dependencies, return ss.str(); } + +std::string +ShaderComposer::Compose(const std::vector& dependencies, + AssetId main_code_asset_id, + const CompositionMap& substitutions) { + size_t size; + const char* main_code = reinterpret_cast(GetAsset(main_code_asset_id, &size)); + return Compose(dependencies, std::string(main_code, size), substitutions); +} -- cgit v1.2.3