diff --git a/src/Nazara/Renderer/UberShaderPreprocessor.cpp b/src/Nazara/Renderer/UberShaderPreprocessor.cpp index 2aeba18b9..ba1ed2ccc 100644 --- a/src/Nazara/Renderer/UberShaderPreprocessor.cpp +++ b/src/Nazara/Renderer/UberShaderPreprocessor.cpp @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include @@ -85,7 +86,18 @@ namespace Nz code << shaderStage.source; stage.SetSource(code); - stage.Compile(); + + try + { + stage.Compile(); + } + catch (const std::exception&) + { + ErrorFlags errFlags(ErrorFlag_ThrowExceptionDisabled); + + NazaraError("Shader code failed to compile:\n" + code); + throw; + } stageIt = shaderStage.cache.emplace(flags, std::move(stage)).first; }