### Godot version

4.0beta16

### System information

Windows 10, Vulkan API 1.3.205, NVIDIA - NVIDIA GeForce RTX 3080, Valve Index, Steam VR

### Issue description

When XR is enabled FogVolumes (and probably all volumetric fog but it is not obvious for large homogenous volumes) are rendered to the wrong location in both eyes once XR is enabled on the viewport. Here's a unit-cube dense fog volume stacked between two mesh cubes.

Here it is correctly positioned in the editor:
<img width="687" alt="Screenshot 2023-01-29 122055" src="https://user-images.githubusercontent.com/617962/215351015-db22759f-2687-4791-bf1d-86266a630415.png">
But once XR is enabled on the viewport, the volume is shifted to the left in the left eye and to the right in the right eye:
![Screenshot_Sun_Jan_29_12-19-34_2023_VR](https://user-images.githubusercontent.com/617962/215351058-907ed3c9-ea98-412c-b792-4edfacff9f57.png)

It is also shifted to the left in the main game window (presumably because the game window is rendering the left eye).

The shift is in screenspace as you can see if I rotate my head:
![Screenshot_Sun_Jan_29_12-19-41_2023_VR](https://user-images.githubusercontent.com/617962/215351286-d9dd656a-bc90-4c00-8834-674d294e8a70.png)


### Steps to reproduce

Create a small fog volume and enable XR on the viewport.
I have also observed this on large fog volumes if using a fog shader which creates small clumps of fog, the clumps are shifted wrongly which breaks stereopsis .

### Minimal reproduction project

[FogVolume.zip](https://github.com/godotengine/godot/files/10530642/FogVolume.zip)

};
		RID radiance_base_cubemap; 
		RID downsampled_radiance_cubemap;
		DownsampleLayer downsampled_layer;
		RID coefficient_buffer;
		bool dirty = true;
		Vector<Layer> layers;
		void clear_reflection_data();
		void update_reflection_data(int p_size, int p_mipmaps, bool p_use_array, RID p_base_cube, int p_base_layer, bool p_low_quality, int p_roughness_layers, RD::DataFormat p_texture_format);
		void create_reflection_fast_filter(bool p_use_arrays);
		void create_reflection_importance_sample(bool p_use_arrays, int p_cube_side, int p_base_layer, uint32_t p_sky_ggx_samples_quality);
		void update_reflection_mipmaps(int p_start, int p_end);
	};
	
	struct SkyShader {
		SkyShaderRD shader;
		ShaderCompiler compiler;
		RID default_shader;
		RID default_material;
		RID default_shader_rd;
	} sky_shader;
	struct SkyMaterialData : public RendererRD::MaterialStorage::MaterialData {
		SkyShaderData *shader_data = nullptr;
		RID uniform_set;
		bool uniform_set_updated;
		virtual void set_render_priority(int p_priority) {}
		virtual void set_next_pass(RID p_pass) {}
		virtual bool update_parameters(const HashMap<StringName, Variant> &p_parameters, bool p_uniform_dirty, bool p_textures_dirty);
		virtual ~SkyMaterialData();
	};