### 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)

}
	for (uint32_t i = 0; i < MAX_RDL_CULL; i++) {
		uint32_t ofs = i < 4 ? 0 : 1;
		uint32_t shift = (i & 0x3) << 3;
		uint32_t mask = ~(0xFF << shift);
		if (i < p_instance->omni_light_count) {
			p_push_constant->omni_lights[ofs] &= mask;
			p_push_constant->omni_lights[ofs] |= uint32_t(forward_id_allocators[RendererRD::FORWARD_ID_TYPE_OMNI_LIGHT].map[p_instance->omni_lights[i]]) << shift;
		}
		if (i < p_instance->spot_light_count) {
			p_push_constant->spot_lights[ofs] &= mask;
			p_push_constant->spot_lights[ofs] |= uint32_t(forward_id_allocators[RendererRD::FORWARD_ID_TYPE_SPOT_LIGHT].map[p_instance->spot_lights[i]]) << shift;
		}
		if (i < p_instance->decals_count) {
			p_push_constant->decals[ofs] &= mask;
			p_push_constant->decals[ofs] |= uint32_t(forward_id_allocators[RendererRD::FORWARD_ID_TYPE_DECAL].map[p_instance->decals[i]]) << shift;
		}
		if (i < p_instance->reflection_probe_count) {
			p_push_constant->reflection_probes[ofs] &= mask;
			p_push_constant->reflection_probes[ofs] |= uint32_t(forward_id_allocators[RendererRD::FORWARD_ID_TYPE_REFLECTION_PROBE].map[p_instance->reflection_probes[i]]) << shift;
		}
	}
}
void RenderForwardMobile::RenderBufferDataForwardMobile::free_data() {
	
	if (render_buffers) {
		render_buffers->clear_context(RB_SCOPE_MOBILE);
	}
}
void RenderForwardMobile::RenderBufferDataForwardMobile::configure(RenderSceneBuffersRD *p_render_buffers) {