From 0b7ae0c75a249ac9ec57fece1d8558a730a852a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Foucault?= Date: Mon, 24 Jun 2024 19:31:23 +0200 Subject: [PATCH] EEVEE: Reduce binary size on Mesa caused by fixed size arrays For some reasons this reduce the binary size from 11MB for the 3 shaders to less than 1MB. --- .../shaders/infos/eevee_lightprobe_sphere_info.hh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/blender/draw/engines/eevee_next/shaders/infos/eevee_lightprobe_sphere_info.hh b/source/blender/draw/engines/eevee_next/shaders/infos/eevee_lightprobe_sphere_info.hh index 2956b0c1afe..c54e42d0166 100644 --- a/source/blender/draw/engines/eevee_next/shaders/infos/eevee_lightprobe_sphere_info.hh +++ b/source/blender/draw/engines/eevee_next/shaders/infos/eevee_lightprobe_sphere_info.hh @@ -26,8 +26,8 @@ GPU_SHADER_CREATE_INFO(eevee_lightprobe_sphere_remap) .push_constant(Type::IVEC4, "world_coord_packed") .sampler(0, ImageType::FLOAT_CUBE, "cubemap_tx") .sampler(1, ImageType::FLOAT_2D_ARRAY, "atlas_tx") - .storage_buf(0, Qualifier::WRITE, "SphereProbeHarmonic", "out_sh[SPHERE_PROBE_MAX_HARMONIC]") - .storage_buf(1, Qualifier::WRITE, "SphereProbeSunLight", "out_sun[SPHERE_PROBE_MAX_HARMONIC]") + .storage_buf(0, Qualifier::WRITE, "SphereProbeHarmonic", "out_sh[]") + .storage_buf(1, Qualifier::WRITE, "SphereProbeSunLight", "out_sun[]") .image(0, GPU_RGBA16F, Qualifier::WRITE, ImageType::FLOAT_2D_ARRAY, "atlas_img") .compute_source("eevee_lightprobe_sphere_remap_comp.glsl") .additional_info("eevee_shared", "eevee_global_ubo") @@ -36,7 +36,7 @@ GPU_SHADER_CREATE_INFO(eevee_lightprobe_sphere_remap) GPU_SHADER_CREATE_INFO(eevee_lightprobe_sphere_irradiance) .local_group_size(SPHERE_PROBE_SH_GROUP_SIZE) .push_constant(Type::IVEC3, "probe_remap_dispatch_size") - .storage_buf(0, Qualifier::READ, "SphereProbeHarmonic", "in_sh[SPHERE_PROBE_MAX_HARMONIC]") + .storage_buf(0, Qualifier::READ, "SphereProbeHarmonic", "in_sh[]") .storage_buf(1, Qualifier::WRITE, "SphereProbeHarmonic", "out_sh") .additional_info("eevee_shared") .do_static_compilation(true) @@ -45,7 +45,7 @@ GPU_SHADER_CREATE_INFO(eevee_lightprobe_sphere_irradiance) GPU_SHADER_CREATE_INFO(eevee_lightprobe_sphere_sunlight) .local_group_size(SPHERE_PROBE_SH_GROUP_SIZE) .push_constant(Type::IVEC3, "probe_remap_dispatch_size") - .storage_buf(0, Qualifier::READ, "SphereProbeSunLight", "in_sun[SPHERE_PROBE_MAX_HARMONIC]") + .storage_buf(0, Qualifier::READ, "SphereProbeSunLight", "in_sun[]") .storage_buf(1, Qualifier::WRITE, "LightData", "sunlight_buf") .additional_info("eevee_shared") .do_static_compilation(true)