Hi. When trying to enable XR_EXT_EYE_GAZE_INTERACTION_EXTENSION_NAME, xrCreateInstance fails. I’m using Meta Quest Pro, on which I enabled all settings related to Eye tracking, both in the headset, as well as the Meta Quest Link and I’m using the Meta Quest Runtime as well. I’m posting a sample piece of code, which is simplified for debugging sake:
const std::vector<const char*> enabledExtensions = { XR_KHR_D3D12_ENABLE_EXTENSION_NAME, XR_KHR_COMPOSITION_LAYER_DEPTH_EXTENSION_NAME , XR_EXT_EYE_GAZE_INTERACTION_EXTENSION_NAME };
// Create the instance with enabled extensions.
XrInstanceCreateInfo createInfo{ XR_TYPE_INSTANCE_CREATE_INFO };
createInfo.enabledExtensionCount = (uint32_t)enabledExtensions.size();
createInfo.enabledExtensionNames = enabledExtensions.data();
createInfo.applicationInfo = { "SampleSample", 1, "", 1, XR_CURRENT_API_VERSION };
strcpy_s(createInfo.applicationInfo.applicationName, applicationName.c_str());
if(!CHECK_XRCMD(xrCreateInstance(&createInfo, &instance))) {
if (!silenceErrors)
app_logError("Failed to create an OpenXR Instance.");
return false;
}
return true;
This results in XR_ERROR_EXTENSION_NOT_PRESENT. Why could that be?
Note: Only the XR_EXT_EYE_GAZE_INTERACTION_EXTENSION_NAME causes this, I’m using depth and D3D12 successfully.