Vulkan Schnee
0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
XrRig.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
Engine/Input/XrInputHandler.h
"
4
5
#include <glm/glm.hpp>
6
#include <glm/gtc/quaternion.hpp>
7
8
#include <cstddef>
9
10
namespace
Engine::Rendering
11
{
12
class
Headset
;
13
}
14
15
namespace
Input
16
{
20
struct
TrackedHandPose
21
{
25
bool
isValid
=
false
;
26
30
glm::vec3
position
{ 0.0f };
31
35
glm::quat
orientation
{ 1.0f, 0.0f, 0.0f, 0.0f };
36
};
37
43
class
XrRig
44
{
45
public
:
46
XrRig
(
const
XrInputHandler
* inputHandler,
const
Engine::Rendering::Headset
* headset );
47
48
void
resolveTrackedPoses
();
49
50
[[nodiscard]]
TrackedHandPose
getHandPose
(
Hand
hand )
const
;
51
52
private
:
53
const
XrInputHandler
*
inputHandler_
=
nullptr
;
54
const
Engine::Rendering::Headset
*
headset_
=
nullptr
;
55
TrackedHandPose
handPoses_
[2];
56
};
57
}
// namespace Input
XrInputHandler.h
Engine::Rendering::Headset
Definition
Headset.h:36
Input::XrInputHandler
Handles OpenXR input actions and controller state.
Definition
XrInputHandler.h:125
Input::XrRig::getHandPose
TrackedHandPose getHandPose(Hand hand) const
Input::XrRig::inputHandler_
const XrInputHandler * inputHandler_
Definition
XrRig.h:53
Input::XrRig::resolveTrackedPoses
void resolveTrackedPoses()
Input::XrRig::handPoses_
TrackedHandPose handPoses_[2]
Definition
XrRig.h:55
Input::XrRig::headset_
const Engine::Rendering::Headset * headset_
Definition
XrRig.h:54
Input::XrRig::XrRig
XrRig(const XrInputHandler *inputHandler, const Engine::Rendering::Headset *headset)
Engine::Rendering
Definition
VrCameraComponent.h:6
Input
Definition
VrGliderComponent.h:15
Input::Hand
Hand
Definition
XrInputHandler.h:116
Input::TrackedHandPose
World-space pose for one tracked XR hand.
Definition
XrRig.h:21
Input::TrackedHandPose::isValid
bool isValid
True when the pose was resolved from valid tracking data.
Definition
XrRig.h:25
Input::TrackedHandPose::orientation
glm::quat orientation
World-space hand orientation.
Definition
XrRig.h:35
Input::TrackedHandPose::position
glm::vec3 position
World-space hand position.
Definition
XrRig.h:30
Engine
include
Engine
Input
XrRig.h
Generated by
1.14.0