added match statement instead of if-else block (#8500)

# Objective
Replaced the if-else statement block in favor of a match statement to
give a more cleaner code.
This commit is contained in:
Ludo 2023-05-03 19:31:37 +05:30 committed by GitHub
parent a29d328fe5
commit 1a43ce15ed
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -390,25 +390,33 @@ impl SpecializedMeshPipeline for Mesh2dPipeline {
let method = key.intersection(Mesh2dPipelineKey::TONEMAP_METHOD_RESERVED_BITS); let method = key.intersection(Mesh2dPipelineKey::TONEMAP_METHOD_RESERVED_BITS);
if method == Mesh2dPipelineKey::TONEMAP_METHOD_NONE { match method {
shader_defs.push("TONEMAP_METHOD_NONE".into()); Mesh2dPipelineKey::TONEMAP_METHOD_NONE => {
} else if method == Mesh2dPipelineKey::TONEMAP_METHOD_REINHARD { shader_defs.push("TONEMAP_METHOD_NONE".into());
shader_defs.push("TONEMAP_METHOD_REINHARD".into()); }
} else if method == Mesh2dPipelineKey::TONEMAP_METHOD_REINHARD_LUMINANCE { Mesh2dPipelineKey::TONEMAP_METHOD_REINHARD => {
shader_defs.push("TONEMAP_METHOD_REINHARD_LUMINANCE".into()); shader_defs.push("TONEMAP_METHOD_REINHARD".into());
} else if method == Mesh2dPipelineKey::TONEMAP_METHOD_ACES_FITTED { }
shader_defs.push("TONEMAP_METHOD_ACES_FITTED".into()); Mesh2dPipelineKey::TONEMAP_METHOD_REINHARD_LUMINANCE => {
} else if method == Mesh2dPipelineKey::TONEMAP_METHOD_AGX { shader_defs.push("TONEMAP_METHOD_REINHARD_LUMINANCE".into());
shader_defs.push("TONEMAP_METHOD_AGX".into()); }
} else if method == Mesh2dPipelineKey::TONEMAP_METHOD_SOMEWHAT_BORING_DISPLAY_TRANSFORM Mesh2dPipelineKey::TONEMAP_METHOD_ACES_FITTED => {
{ shader_defs.push("TONEMAP_METHOD_ACES_FITTED".into());
shader_defs.push("TONEMAP_METHOD_SOMEWHAT_BORING_DISPLAY_TRANSFORM".into()); }
} else if method == Mesh2dPipelineKey::TONEMAP_METHOD_BLENDER_FILMIC { Mesh2dPipelineKey::TONEMAP_METHOD_AGX => {
shader_defs.push("TONEMAP_METHOD_BLENDER_FILMIC".into()); shader_defs.push("TONEMAP_METHOD_AGX".into());
} else if method == Mesh2dPipelineKey::TONEMAP_METHOD_TONY_MC_MAPFACE { }
shader_defs.push("TONEMAP_METHOD_TONY_MC_MAPFACE".into()); Mesh2dPipelineKey::TONEMAP_METHOD_SOMEWHAT_BORING_DISPLAY_TRANSFORM => {
shader_defs.push("TONEMAP_METHOD_SOMEWHAT_BORING_DISPLAY_TRANSFORM".into());
}
Mesh2dPipelineKey::TONEMAP_METHOD_BLENDER_FILMIC => {
shader_defs.push("TONEMAP_METHOD_BLENDER_FILMIC".into());
}
Mesh2dPipelineKey::TONEMAP_METHOD_TONY_MC_MAPFACE => {
shader_defs.push("TONEMAP_METHOD_TONY_MC_MAPFACE".into());
}
_ => {}
} }
// Debanding is tied to tonemapping in the shader, cannot run without it. // Debanding is tied to tonemapping in the shader, cannot run without it.
if key.contains(Mesh2dPipelineKey::DEBAND_DITHER) { if key.contains(Mesh2dPipelineKey::DEBAND_DITHER) {
shader_defs.push("DEBAND_DITHER".into()); shader_defs.push("DEBAND_DITHER".into());