From 813314b5d58ef637634f325660e86e0aed4e97a4 Mon Sep 17 00:00:00 2001 From: SirLynix Date: Fri, 17 Jun 2022 19:07:40 +0200 Subject: [PATCH] UberShader: Handle case where entry points come from imported modules --- src/Nazara/Graphics/UberShader.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Nazara/Graphics/UberShader.cpp b/src/Nazara/Graphics/UberShader.cpp index 8988926d4..2d92fd3e4 100644 --- a/src/Nazara/Graphics/UberShader.cpp +++ b/src/Nazara/Graphics/UberShader.cpp @@ -100,6 +100,7 @@ namespace Nz nzsl::Ast::SanitizeVisitor::Options sanitizeOptions; sanitizeOptions.allowPartialSanitization = true; + sanitizeOptions.moduleResolver = Graphics::Instance()->GetShaderModuleResolver(); nzsl::Ast::ModulePtr sanitizedModule = nzsl::Ast::Sanitize(module, sanitizeOptions); @@ -122,7 +123,7 @@ namespace Nz }; nzsl::Ast::ReflectVisitor reflect; - reflect.Reflect(*sanitizedModule->rootNode, callbacks); + reflect.Reflect(*sanitizedModule, callbacks); if ((m_shaderStages & supportedStageType) != m_shaderStages) throw std::runtime_error("shader doesn't support all required shader stages");