We now create a list of active generators at the start of each frame, which speeds up iterating over them later and removes the need to wrap every loop in a mutex.
#jira UE-195920
#rb erica.stella
[CL 28108736 by christopher fiala in ue5-main branch]
-Added a ProblematicOpenXRApiLayerInfos ini setting that defines specific ApiLayer versions that are behaving badly with regard to an extension.
-Attempt to create the openxr instance by repeatedly calling xrCreateInstance with progressively more of the potentially problematic extensions not enabled. We will either find a combination that works or never find a combination that works.
-This Cl also provides a structure for implementing further problematic openxr api layer handling, should a project need further workarounds similar to this.
#jira UE-194257
#rb Christopher.Fiala
[CL 27919342 by jeff fisher in ue5-main branch]
-Refactoring to move some cross-module included Private header files into Internal. Eliminating some includes by refactoring. Eliminating some simply unnecessary includes.
#jira UE-193863 UE-193862
#review-27587767
#rb Christopher.Fiala
[CL 27605791 by Jeff Fisher in ue5-main branch]
The app will still exit after detecting XR_SESSION_STATE_LOSS_PENDING, but will no longer crash.
#jira UE-168851
#rb jeff.fisher
[CL 27145067 by christopher fiala in ue5-main branch]
if we call GetPoseForTime after the session has ended, we might have a zero'd time from retained XrFrameState.
In that case, we shouldn't be fetching any poses, nor pretending that poses might be valid.
#rb Jeff.Fisher
[CL 27052830 by robert srinivasiah in ue5-main branch]
Logcat spam lead to this discovery. Attaching the current thread to the Java Env results in 250-300us speed increase inside xrEndFrame.
#jira UE-189231
#rb Chris.Babcock
[CL 27042786 by robert srinivasiah in ue5-main branch]
GRHISupportsAttachmentVariableRateShading could be enabled by FSR even when FDM is not available. Need to check whether the active extension is FDM by checking the ImageDataType.
#rb jeff.fisher robert.srinivasiah
[CL 26879253 by erica stella in ue5-main branch]
-Expose AngularVelocity, etc directly from MotionControllerComponent.
-Expose AngularVelocity to blueprint as an FRotator.
-Better parameter names and comments for the FVector representation of angular velocity: AngularVelocityAsVectorAndLength. It was quite prone to misuse previously.
-Fixed late update of HMD motion controllers potentially firing when it should not.
-Split the controller poll function into game and render thread versions.
#jira UE-190852
[REVIEW]
#rb Christopher.fiala
[CL 26611565 by jeff fisher in ue5-main branch]
As of the moment, only internal generators are used. Allow registering external generators so new ones can be added. Also decoupling FBFoveationImageGenerator from OpenXRHMD to register it as an external image generator.
#jira UE-189569
#rb robert.srinivasiah
[CL 26601599 by erica stella in ue5-main branch]
-Initialize it in the constructor, also made the hand tracking system properties into a member so our member doesn't end up pointing at a local variable that goes out of scope.
#jira UE-190378
[REVIEW]
#rb Chirstopher.Fiala
[CL 26460024 by jeff fisher in ue5-main branch]