### Godot version

4.1.1

### System information

windows 11, mobile renderer

### Issue description

On Mobile Vulkan renderer, the clear color is 50% lighter than expected

See steps to reproduce and Minimal reproduction project below.

The box and background have the same color on Forward+ and compatibility, but not on Mobile
happens also in runtime on exported project, not only in editor preview

Images of the same scene from
compatibility:
![compatibility](https://github.com/godotengine/godot/assets/11915378/a874fa86-c16f-43ef-aed7-c2066b770ac1)
Forward+:
![forward](https://github.com/godotengine/godot/assets/11915378/e416f9a6-dfd4-4c47-bbc2-b552ca58f83c)
Mobile:
![mobile](https://github.com/godotengine/godot/assets/11915378/e28e2db8-f7c3-47e2-8c0a-44ce937c9270)


### Steps to reproduce

 - add a CSGBox3D with "unshaded" shading, and albedo of #545454
 - add environment with Background = Custom color and color of #545454

Box and background are not the same color

### Minimal reproduction project

[bg_color.zip](https://github.com/godotengine/godot/files/12174822/bg_color.zip)

light_projectors_get_filter() == RS::LIGHT_PROJECTOR_FILTER_LINEAR_MIPMAPS_ANISOTROPIC;
	spec_constants.push_back(sc);
	scene_shader.set_default_specialization_constants(spec_constants);
	base_uniforms_changed(); 
}
RenderForwardMobile::RenderForwardMobile() {
	singleton = this;
	sky.set_texture_format(_render_buffers_get_color_format());
	String defines;
	defines += "\n#define MAX_ROUGHNESS_LOD " + itos(get_roughness_layers() - 1) + ".0\n";
	if (is_using_radiance_cubemap_array()) {
		defines += "\n#define USE_RADIANCE_CUBEMAP_ARRAY \n";
	}
	
	defines += "\n#define MAX_DIRECTIONAL_LIGHT_DATA_STRUCTS " + itos(MAX_DIRECTIONAL_LIGHTS) + "\n";
	{
		
		scene_state.max_lightmaps = 2;
		defines += "\n#define MAX_LIGHTMAP_TEXTURES " + itos(scene_state.max_lightmaps) + "\n";
		defines += "\n#define MAX_LIGHTMAPS " + itos(scene_state.max_lightmaps) + "\n";
		scene_state.lightmap_buffer = RD::get_singleton()->storage_buffer_create(sizeof(LightmapData) * scene_state.max_lightmaps);
	}
	{
		
		scene_state.max_lightmap_captures = 2048;
		scene_state.lightmap_captures = memnew_arr(LightmapCaptureData, scene_state.max_lightmap_captures);
		scene_state.lightmap_capture_buffer = RD::get_singleton()->storage_buffer_create(sizeof(LightmapCaptureData) * scene_state.max_lightmap_captures);
	}
	{
		defines += "\n#define MATERIAL_UNIFORM_SET " + itos(MATERIAL_UNIFORM_SET) + "\n";