Make shaderc optimization off by default for now since wgpu currently rejects if fragment shader inputs are optimized out such that they don't match fragment shader outputs

This commit is contained in:
Imbris 2024-02-21 00:18:06 -05:00
parent 9031ac922a
commit 9ff9a535fd
2 changed files with 4 additions and 4 deletions

View File

@ -563,6 +563,6 @@ pub enum ExperimentalShader {
Cinematic,
/// Glittering snow.
SnowGlitter,
/// Disables any optimizations done via shaderc.
DisableShadercOptimization,
/// Enables optimizations when shaderc is processing shaders.
EnableShadercOptimization,
}

View File

@ -283,9 +283,9 @@ impl ShaderModules {
let mut compiler = Compiler::new().ok_or(RenderError::ErrorInitializingCompiler)?;
let mut options = CompileOptions::new().ok_or(RenderError::ErrorInitializingCompiler)?;
let shaderc_opts = !pipeline_modes
let shaderc_opts = pipeline_modes
.experimental_shaders
.contains(&ExperimentalShader::DisableShadercOptimization);
.contains(&ExperimentalShader::EnableShadercOptimization);
if shaderc_opts {
options.set_optimization_level(OptimizationLevel::Performance);
info!("Enabled optimization by shaderc.");