This class contains the interface related to XR but significant to RPI level functionality. More...
#include <XRRenderingInterface.h>
Public Member Functions | |
AZ_CLASS_ALLOCATOR (XRRenderingInterface, AZ::SystemAllocator) | |
AZ_RTTI (XRRenderingInterface, "{18177EAF-3014-4349-A28F-BF58442FFC2B}") | |
virtual AZ::RHI::ResultCode | InitInstance ()=0 |
This api is used to create a XRInstance. | |
virtual void | AcquireSwapChainImage (const AZ::u32 viewIndex)=0 |
This api is used to acquire swapchain image for the provided view index. | |
virtual AZ::u32 | GetNumViews () const =0 |
Return the number of views associated with the device. | |
virtual bool | ShouldRender () const =0 |
Returns true if rendering data is valid for the current frame. | |
virtual AZ::u32 | GetSwapChainWidth (const AZ::u32 viewIndex) const =0 |
Return the swapChain width (in pixels) associated with the view index. | |
virtual AZ::u32 | GetSwapChainHeight (const AZ::u32 viewIndex) const =0 |
Return the swapChain height (in pixels) associated with the view index. | |
virtual AZ::RHI::Format | GetSwapChainFormat (const AZ::u32 viewIndex) const =0 |
Return the swapChain format associated with the view index. | |
virtual AZ::RHI::ResultCode | GetViewFov (const AZ::u32 viewIndex, AZ::RPI::FovData &outFovData) const =0 |
Return the Fov data (in radians) associated with provided view index. | |
virtual RHI::ResultCode | GetViewPose (const AZ::u32 viewIndex, PoseData &outPoseData) const =0 |
Return the Pose data associated with provided view index. | |
virtual RHI::ResultCode | GetControllerPose (const AZ::u32 handIndex, PoseData &outPoseData) const =0 |
Return the controller Pose data associated with provided hand Index. | |
virtual RHI::ResultCode | GetViewFrontPose (PoseData &outPoseData) const =0 |
Return the Pose data associated with front view. | |
virtual RHI::ResultCode | GetViewLocalPose (PoseData &outPoseData) const =0 |
virtual RHI::ResultCode | GetControllerStagePose (const AZ::u32 handIndex, PoseData &outPoseData) const =0 |
Return the Pose data associated with local view translated and Rotated by 60 deg left or right based on handIndex. | |
virtual float | GetControllerScale (const AZ::u32 handIndex) const =0 |
Return the controller scale data associated with provided hand Index. | |
virtual AZ::Matrix4x4 | CreateStereoscopicProjection (float angleLeft, float angleRight, float angleBottom, float angleTop, float nearDist, float farDist, bool reverseDepth)=0 |
Creates an off-center projection matrix suitable for VR. Angles are in radians and distance is in meters. | |
virtual AZ::RHI::XRRenderingInterface * | GetRHIXRRenderingInterface ()=0 |
Returns the XR specific RHI rendering interface. | |
virtual float | GetXButtonState () const =0 |
Return the X button state from the controller. | |
virtual float | GetYButtonState () const =0 |
Return the Y button state from the controller. | |
virtual float | GetAButtonState () const =0 |
Return the A button state from the controller. | |
virtual float | GetBButtonState () const =0 |
Return the B button state from the controller. | |
virtual float | GetXJoyStickState (const AZ::u32 handIndex) const =0 |
Return the controller related joystick state for x-axis. | |
virtual float | GetYJoyStickState (const AZ::u32 handIndex) const =0 |
Return the controller related joystick state for y-axis. | |
virtual float | GetSqueezeState (const AZ::u32 handIndex) const =0 |
Return the X button state from the controller. | |
virtual float | GetTriggerState (const AZ::u32 handIndex) const =0 |
Return the X button state from the controller. | |
virtual AZ::Data::Instance< AZ::RPI::AttachmentImage > | InitPassFoveatedAttachment (const PassTemplate &passTemplate, const RHI::XRFoveatedLevel *level=nullptr) const |
This class contains the interface related to XR but significant to RPI level functionality.
|
pure virtual |
Return the Pose data associated with local view. This pose tracks center Local space which is world-locked origin, gravity-aligned to exclude pitch and roll, with +Y up, +X to the right, and -Z forward.
|
inlinevirtual |
Initialize a shading rate image attachment of a pass template with contents suitable for a foveated level. Returns the image that was created and initialized. If no foveated level is specified, the value will be retrieved from the settings registry.