Controller Status

Introduction

Instead of the button events, the controller has many status listed below:

AngularVelocity

To get the angular velocity (FVector) of a device.

Note: supported in left-handed mode.

Blueprint

../_images/UnrealControllerStatus_AngularVelocity.png

C++

FVector UWaveVRInputFunctionLibrary::GetWaveVRInputDeviceAngularVelocity(EWVR_DeviceType device)

Connection

To check if a device is connected.

Note: supported in left-handed mode.

Blueprint

../_images/UnrealControllerStatus_Connection.png

C++

bool UWaveVRInputFunctionLibrary::IsInputAvailable(EWVR_DeviceType device)

Degree of Freedom

To get the supported DoF of a device. Rotation-only is 3DoF, supporting both rotation and position is 6DoF.

Blueprint

../_images/UnrealControllerStatus_DoF.png

C++

EWVR_DOF UWaveVRBlueprintFunctionLibrary::GetSupportedNumOfDoF(EWVR_DeviceType Type)

Focus

To check if the application has system focus (in foreground).

Blueprint

../_images/UnrealControllerStatus_Focus.png

C++

bool UWaveVRBlueprintFunctionLibrary::IsInputFocusCapturedBySystem()

Left-Handed Mode

To check if the application environment is left-handed mode or right-handed mode.

Blueprint

../_images/UnrealControllerStatus_LHM.png

C++

bool UWaveVRBlueprintFunctionLibrary::IsLeftHandedMode()

Valid Pose

To check if a device’s pose is valid.

Blueprint

../_images/UnrealControllerStatus_ValidPose.png

C++

bool UWaveVRBlueprintFunctionLibrary::IsDevicePoseValid(EWVR_DeviceType Type)

Velocity

To get the velocity (FVector) of a device.

Note: supported in left-handed mode.

Blueprint

../_images/UnrealControllerStatus_Velocity.png

C++

FVector UWaveVRInputFunctionLibrary::GetWaveVRInputDeviceVelocity(EWVR_DeviceType device)

Vibration

To vibrate specified device in a duration (microsecond).

Note: supported in left-handed mode.

Blueprint

../_images/UnrealControllerStatus_Vibration.png

C++

void UWaveVRInputFunctionLibrary::TriggerHapticPulse(EWVR_DeviceType device, int32 duration_ms)