324 check(GetHMDDevice() ==
nullptr);
335 UE_DEPRECATED(5.6,
"IXRInput is deprecated and will be removed in a future release.")
414 UE_DEPRECATED(5.6,
"Use the FSceneViewFamily overload instead")
#define check(expr)
Definition AssertionMacros.h:314
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EXRSpaceType
Definition HeadMountedDisplayTypes.h:320
EXRControllerPoseType
Definition HeadMountedDisplayTypes.h:332
EXRTrackedDeviceType
Definition HeadMountedDisplayTypes.h:236
ESPMode
Definition SharedPointerFwd.h:12
Definition ARSupportInterface.h:29
Definition NameTypes.h:617
Definition RenderGraphBuilder.h:49
Definition SceneView.h:2212
Definition IHeadMountedDisplay.h:38
Definition IModularFeature.h:12
Definition StereoRendering.h:40
Definition IXRCamera.h:22
Definition IXRLoadingScreen.h:18
Definition IIdentifiableXRDevice.h:14
Definition IXRTrackingSystem.h:47
virtual FRotator GetBaseRotation() const
Definition IXRTrackingSystem.h:253
virtual FVector2D GetPlayAreaBounds(EHMDTrackingOrigin::Type Origin) const
Definition IXRTrackingSystem.h:451
virtual void DisconnectRemoteXRDevice()
Definition IXRTrackingSystem.h:446
virtual FTransform GetTrackingToWorldTransform() const =0
virtual class TSharedPtr< class IStereoRendering, ESPMode::ThreadSafe > GetStereoRenderingDevice()
Definition IXRTrackingSystem.h:322
virtual TSharedPtr< FARSupportInterface, ESPMode::ThreadSafe > GetARCompositionComponent()
Definition IXRTrackingSystem.h:342
virtual void OnLateUpdateApplied_RenderThread(FRHICommandListImmediate &RHICmdList, const FTransform &NewRelativeTransform) final
Definition IXRTrackingSystem.h:427
virtual bool IsHeadTrackingAllowed() const =0
virtual FQuat GetBaseOrientation() const
Definition IXRTrackingSystem.h:266
virtual int32 GetXRSystemFlags() const =0
virtual class IHeadMountedDisplay * GetHMDDevice()
Definition IXRTrackingSystem.h:314
virtual bool GetFloorToEyeTrackingTransform(FTransform &OutFloorToEye) const =0
virtual void OnBeginRendering_GameThread() final
Definition IXRTrackingSystem.h:415
virtual EXRDeviceConnectionResult::Type ConnectRemoteXRDevice(const FString &IpAddress, const int32 BitRate)
Definition IXRTrackingSystem.h:442
virtual const TSharedPtr< const FARSupportInterface, ESPMode::ThreadSafe > GetARCompositionComponent() const
Definition IXRTrackingSystem.h:343
virtual void SetHeadTrackingEnforced(bool bEnabled)
Definition IXRTrackingSystem.h:377
static FName GetModularFeatureName()
Definition IXRTrackingSystem.h:49
virtual bool GetTrackingOriginTransform(TEnumAsByte< EHMDTrackingOrigin::Type > Origin, FTransform &OutTransform) const
Definition IXRTrackingSystem.h:456
virtual class IXRLoadingScreen * GetLoadingScreen()
Definition IXRTrackingSystem.h:351
virtual bool DoesSupportLateProjectionUpdate() const
Definition IXRTrackingSystem.h:93
virtual void ResetPosition()
Definition IXRTrackingSystem.h:240
virtual void GetMotionControllerState(UObject *WorldContext, const EXRSpaceType XRSpaceType, const EControllerHand Hand, const EXRControllerPoseType XRControllerPoseType, FXRMotionControllerState &MotionControllerState)=0
virtual FString GetTrackedDevicePropertySerialNumber(int32 DeviceId)=0
virtual void OnBeginRendering_GameThread(FSceneViewFamily &InViewFamily)
Definition IXRTrackingSystem.h:416
virtual FVector GetBasePosition() const
Definition IXRTrackingSystem.h:278
virtual bool EnumerateTrackedDevices(TArray< int32 > &OutDevices, EXRTrackedDeviceType Type=EXRTrackedDeviceType::Any)=0
virtual void OnEndPlay(FWorldContext &InWorldContext)
Definition IXRTrackingSystem.h:388
virtual bool DoesSupportPositionalTracking() const =0
static constexpr int32 HMDDeviceId
Definition IXRTrackingSystem.h:70
virtual void CalibrateExternalTrackingSource(const FTransform &ExternalTrackingTransform)
Definition IXRTrackingSystem.h:289
virtual void SetBasePosition(const FVector &BasePosition)
Definition IXRTrackingSystem.h:273
virtual void ResetOrientation(float Yaw=0.f)
Definition IXRTrackingSystem.h:235
virtual class TSharedPtr< class IXRCamera, ESPMode::ThreadSafe > GetXRCamera(int32 DeviceId=HMDDeviceId)=0
virtual bool IsHeadTrackingEnforced() const
Definition IXRTrackingSystem.h:371
virtual HEADMOUNTEDDISPLAY_API bool IsHeadTrackingAllowedForWorld(UWorld &World) const
Definition IXRTrackingSystem.cpp:38
virtual bool HasValidTrackingPosition()=0
virtual bool GetTrackingSensorProperties(int32 DeviceId, FQuat &OutOrientation, FVector &OutPosition, FXRSensorProperties &OutSensorProperties)=0
virtual FString GetVersionString() const =0
virtual bool GetRelativeEyePose(int32 DeviceId, int32 ViewIndex, FQuat &OutOrientation, FVector &OutPosition)=0
virtual HEADMOUNTEDDISPLAY_API void GetHMDData(UObject *WorldContext, FXRHMDData &HMDData)
Definition IXRTrackingSystem.cpp:27
virtual void OnBeginPlay(FWorldContext &InWorldContext)
Definition IXRTrackingSystem.h:383
virtual void ResetOrientationAndPosition(float Yaw=0.f)=0
virtual bool IsTracking(int32 DeviceId)=0
virtual float GetWorldToMetersScale() const =0
virtual FVector GetAudioListenerOffset(int32 DeviceId=HMDDeviceId) const
Definition IXRTrackingSystem.h:220
virtual bool GetCurrentPose(int32 DeviceId, FQuat &OutOrientation, FVector &OutPosition)=0
virtual void SetTrackingOrigin(EHMDTrackingOrigin::Type NewOrigin)=0
virtual void SetBaseRotation(const FRotator &BaseRot)
Definition IXRTrackingSystem.h:248
virtual void UpdateExternalTrackingPosition(const FTransform &ExternalTrackingTransform)
Definition IXRTrackingSystem.h:299
virtual bool GetPlayAreaRect(FTransform &OutTransform, FVector2D &OutRect) const
Definition IXRTrackingSystem.h:461
virtual uint32 CountTrackedDevices(EXRTrackedDeviceType Type=EXRTrackedDeviceType::Any)=0
virtual EXRTrackedDeviceType GetTrackedDeviceType(int32 DeviceId) const =0
virtual void GetHandTrackingState(UObject *WorldContext, const EXRSpaceType XRSpaceType, const EControllerHand Hand, FXRHandTrackingState &HandTrackingState)=0
virtual void OnBeginRendering_RenderThread(FRHICommandListImmediate &RHICmdList, FSceneViewFamily &ViewFamily) final
Definition IXRTrackingSystem.h:408
virtual bool DoesSupportLateUpdate() const
Definition IXRTrackingSystem.h:84
virtual void UpdateTrackingToWorldTransform(const FTransform &TrackingToWorldOverride)=0
virtual EHMDTrackingOrigin::Type GetTrackingOrigin() const =0
virtual class IXRInput * GetXRInput()
Definition IXRTrackingSystem.h:336
virtual bool OnEndGameFrame(FWorldContext &WorldContext)
Definition IXRTrackingSystem.h:398
virtual bool GetCurrentInteractionProfile(const EControllerHand Hand, FString &InteractionProfile)=0
virtual void RebaseObjectOrientationAndPosition(FVector &Position, FQuat &Orientation) const
Definition IXRTrackingSystem.h:125
virtual IOpenXRHMD * GetIOpenXRHMD()
Definition IXRTrackingSystem.h:466
virtual void SetBaseOrientation(const FQuat &BaseOrient)
Definition IXRTrackingSystem.h:261
virtual bool OnStartGameFrame(FWorldContext &WorldContext)
Definition IXRTrackingSystem.h:393
Definition EnumAsByte.h:22
Definition SharedPointer.h:692
Type
Definition HeadMountedDisplayTypes.h:82
Type
Definition HeadMountedDisplayTypes.h:113
@ FeatureNotSupported
Definition HeadMountedDisplayTypes.h:115
Definition HeadMountedDisplayTypes.h:343
Definition HeadMountedDisplayTypes.h:403
Definition HeadMountedDisplayTypes.h:364
Definition IXRTrackingSystem.h:23
float LeftFOV
Definition IXRTrackingSystem.h:25
float CameraDistance
Definition IXRTrackingSystem.h:38
float NearPlane
Definition IXRTrackingSystem.h:33
float FarPlane
Definition IXRTrackingSystem.h:35
float RightFOV
Definition IXRTrackingSystem.h:27
float BottomFOV
Definition IXRTrackingSystem.h:31
float TopFOV
Definition IXRTrackingSystem.h:29
static CORE_API const TQuat< double > Identity
Definition Quat.h:63
static CORE_API const TRotator< double > ZeroRotator
Definition Rotator.h:57
static CORE_API const TVector2< double > ZeroVector
Definition Vector2D.h:63
static CORE_API const TVector< double > ZeroVector
Definition Vector.h:79