### 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
}
		String index_path = doc_tool_path.path_join("doc/classes");
		/
		Ref<DirAccess> da = DirAccess::create_for_path(index_path);
		err = da->make_dir_recursive(index_path);
		ERR_FAIL_COND_V_MSG(err != OK, false, "Error: Can't create index directory: " + index_path + ": " + itos(err));
		print_line("Loading classes from: " + index_path);
		err = docsrc.load_classes(index_path);
		ERR_FAIL_COND_V_MSG(err != OK, false, "Error loading classes from: " + index_path + ": " + itos(err));
		checked_paths.insert(index_path);
		print_line("Merging docs...");
		doc.merge_from(docsrc);
		for (const String &E : checked_paths) {
			print_line("Erasing old docs at: " + E);
			err = DocTools::erase_classes(E);
			ERR_FAIL_COND_V_MSG(err != OK, false, "Error erasing old docs at: " + E + ": " + itos(err));
		}
		print_line("Generating new docs...");
		err = doc.save_classes(index_path, doc_data_classes);
		ERR_FAIL_COND_V_MSG(err != OK, false, "Error saving new docs:" + itos(err));
		print_line("Deleting docs cache...");
		if (FileAccess::exists(EditorHelp::get_cache_full_path())) {
			DirAccess::remove_file_or_error(EditorHelp::get_cache_full_path());
		}
		OS::get_singleton()->set_exit_code(EXIT_SUCCESS);
		return false;
	}
	if (dump_gdextension_interface) {
		GDExtensionInterfaceDump::generate_gdextension_interface_file("gdextension_interface.h");
	}