Merge pull request #69392 from dsnopek/openxr-quest-fix

Fix OpenXR on the Meta Quest: XR_KHR_loader_init_android is not reported as available (but it works anyway)
This commit is contained in:
Rémi Verschelde 2022-11-30 19:08:55 +01:00
commit f5dbec2f73
No known key found for this signature in database
GPG Key ID: C3336907360768E1
2 changed files with 6 additions and 1 deletions

View File

@ -47,11 +47,15 @@ OpenXRAndroidExtension *OpenXRAndroidExtension::get_singleton() {
OpenXRAndroidExtension::OpenXRAndroidExtension(OpenXRAPI *p_openxr_api) : OpenXRAndroidExtension::OpenXRAndroidExtension(OpenXRAPI *p_openxr_api) :
OpenXRExtensionWrapper(p_openxr_api) { OpenXRExtensionWrapper(p_openxr_api) {
singleton = this; singleton = this;
request_extensions[XR_KHR_LOADER_INIT_ANDROID_EXTENSION_NAME] = nullptr; // must be available request_extensions[XR_KHR_LOADER_INIT_ANDROID_EXTENSION_NAME] = &loader_init_extension_available;
request_extensions[XR_KHR_ANDROID_CREATE_INSTANCE_EXTENSION_NAME] = &create_instance_extension_available; request_extensions[XR_KHR_ANDROID_CREATE_INSTANCE_EXTENSION_NAME] = &create_instance_extension_available;
} }
void OpenXRAndroidExtension::on_before_instance_created() { void OpenXRAndroidExtension::on_before_instance_created() {
if (!loader_init_extension_available) {
print_line("OpenXR: XR_KHR_loader_init_android is not reported as available - trying to initialize anyway...");
}
EXT_INIT_XR_FUNC(xrInitializeLoaderKHR); EXT_INIT_XR_FUNC(xrInitializeLoaderKHR);
JNIEnv *env = get_jni_env(); JNIEnv *env = get_jni_env();

View File

@ -48,6 +48,7 @@ public:
private: private:
static OpenXRAndroidExtension *singleton; static OpenXRAndroidExtension *singleton;
bool loader_init_extension_available = false;
bool create_instance_extension_available = false; bool create_instance_extension_available = false;
// Initialize the loader // Initialize the loader