### Godot version

4.1

### System information

Windows 10 - Godot 4.1.1 - Compatibility

### Issue description

When trying to use the Varjo XR3 headset (in OpenXR mode) with Godot 4 (with OpenXR and passthrough activated), the passthrough does not work, i.e. the scene is rendered on a black background instead of the camera stream.

It seems to me that are two problems in the openxr module, more precisely in the openx_api.cpp file (fixing them solves  the issue) : 

1. The XR_COMPOSITION_LAYER_BLEND_TEXTURE_SOURCE_ALPHA_BIT  is only set when the number of layers is > 1, which is fine for the Meta Quest headset but does not work for the Varjo since it only requires one layer. 
2. The environment blend mode XR_ENVIRONMENT_BLEND_MODE_ALPHA_BLEND  is only really set when the XRFbPassthrough extension is present, which is not the case with the Varjo runtime. 

I am not sure how to fix this without causing issues for other headsets.

1. Would it be an issue to always activate the XR_COMPOSITION_LAYER_BLEND_TEXTURE_SOURCE_ALPHA_BIT ? 
2. Could blend modes be activated even if they are not supported by an extension ? 





### Steps to reproduce

- Create a Godot 4 project with OpenXR activated in Compatibility mode
- Add the code to activate OpenXr and to enable passthrough : https://docs.godotengine.org/en/stable/tutorials/xr/openxr_passthrough.html#passthrough-extension
- Start the Varjo Base software and activate OpenXR
- Run the Godot project

### Minimal reproduction project

N/A
bool is_initialized();
	bool is_running();
	bool initialize(const String &p_rendering_driver);
	bool initialize_session();
	void finish();
	XrSpace get_play_space() const { return play_space; }
	XrTime get_next_frame_time() { return frame_state.predictedDisplayTime + frame_state.predictedDisplayPeriod; }
	bool can_render() { return instance != XR_NULL_HANDLE && session != XR_NULL_HANDLE && running && view_pose_valid && frame_state.shouldRender; }
	Size2 get_recommended_target_size();
	XRPose::TrackingConfidence get_head_center(Transform3D &r_transform, Vector3 &r_linear_velocity, Vector3 &r_angular_velocity);
	bool get_view_transform(uint32_t p_view, Transform3D &r_transform);
	bool get_view_projection(uint32_t p_view, double p_z_near, double p_z_far, Projection &p_camera_matrix);
	bool process();
	void pre_render();
	bool pre_draw_viewport(RID p_render_target);
	RID get_color_texture();
	RID get_depth_texture();
	void post_draw_viewport(RID p_render_target);
	void end_frame();
	
	float get_display_refresh_rate() const;
	void set_display_refresh_rate(float p_refresh_rate);
	Array get_available_display_refresh_rates() const;
	
	double get_render_target_size_multiplier() const;
	void set_render_target_size_multiplier(double multiplier);
	
	String get_default_action_map_resource_name();
	RID tracker_create(const String p_name);
	String tracker_get_name(RID p_tracker);