Documentation for the Unreal C++ Plugin
Loading...
Searching...
No Matches
PixoVRCharacter.h
Go to the documentation of this file.
1// Copyright(c) Pixo Group. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "VRCharacter.h"
7#include "PixoVRHand.h"
10#include "PixoVRCharacter.generated.h"
11
16class UDataTable;
17class USphereComponent;
18class APixoVRLaser;
19class UPixoVRMotionControllerComponent;
21
22DECLARE_LOG_CATEGORY_EXTERN(LogPixoVRCharacter, Log, All);
23DECLARE_MULTICAST_DELEGATE_TwoParams(FOnTeleportationActivated, EControllerHand, bool);
24DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnWristMenuActivated, EControllerHand, Hand);
25DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnHandGrabAction, bool, Pressed, bool, RightGrab);
26DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnCameraRotatedByController, float, RotatedAngleMagnitude);
27
32UCLASS(Blueprintable)
33class PIXOCORE_API APixoVRCharacter : public AVRCharacter
34{
35 GENERATED_BODY()
37public:
39
40 virtual void BeginPlay() override;
41 virtual void Tick(float DeltaTime) override;
42 virtual void SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) override;
43 virtual void GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const override;
44 virtual void PossessedBy(AController* NewController) override;
45
46 UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "PixoVR")
47 float DefaultPlayerHeight;
48
49 /********************************* Teleport *********************************/
50 UFUNCTION(BlueprintCallable) void HandleTeleportLeftPressed();
51 UFUNCTION(BlueprintCallable) void HandleTeleportLeftReleased();
52 UFUNCTION(BlueprintCallable) void HandleTeleportRightPressed();
53 UFUNCTION(BlueprintCallable) void HandleTeleportRightReleased();
54 /******* Lenovo Teleport for thumbsticks without directional actions *******/
55 UFUNCTION(BlueprintCallable) void HandleTeleportLeftByAxis(float CurrentAxisValue);
56 UFUNCTION(BlueprintCallable) void HandleTeleportRightByAxis(float CurrentAxisValue);
57
58 UFUNCTION(Server, Unreliable, WithValidation)
59 void HandleTeleportLeftUp(float Value);
60
61 UFUNCTION(Server, Unreliable, WithValidation)
62 void HandleTeleportLeftRight(float Value);
63
64 UFUNCTION(Server, Unreliable, WithValidation)
65 void HandleTeleportRightUp(float Value);
66
67 UFUNCTION(Server, Unreliable, WithValidation)
68 void HandleTeleportRightRight(float Value);
69
70 virtual bool CanTeleport() const;
71
72 UFUNCTION()
73 void ExecuteTeleportation(EControllerHand Hand);
74
76 UFUNCTION(BlueprintCallable, Category = "PixoVR")
77 void ActivateTeleporter(EControllerHand Hand, bool InActivate);
78
79 UFUNCTION(BlueprintCallable, Category = "PixoVR")
80 void SpawnNewTeleporterClass(TSubclassOf<ATeleporterBase> TeleporterClass);
81
82 UFUNCTION(BlueprintCallable, Server, Reliable, WithValidation, Category = "PixoVR")
83 void NotifyActivateTeleporter(EControllerHand Hand, bool InActivate);
84
85 UFUNCTION(BlueprintCallable, NetMulticast, Reliable, Category = "PixoVR")
86 void MulticastActivateTeleporter(EControllerHand Hand, bool InActivate);
87
88 UFUNCTION()
89 void SpawnTeleporter(EControllerHand Hand, bool InActivate);
90
91 UPROPERTY(BlueprintReadWrite, Category = "PixoVR")
92 bool bLaserBeamActive;
93
94 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
95 FName LeftTeleporterSocket;
96
97 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
98 FName RightTeleporterSocket;
99
100 UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR")
101 ATeleporterBase* TeleportControllerLeft;
102
103 UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR")
104 ATeleporterBase* TeleportControllerRight;
106 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
107 TSubclassOf<ATeleporterBase> TeleportControllerClass;
108
110 UPROPERTY(EditAnywhere, Replicated, BlueprintReadWrite, Category = "PixoVR")
111 bool bTeleporterEnabled = true;
112
113 UPROPERTY(EditAnywhere, Replicated, BlueprintReadWrite, Category = "PixoVR")
114 bool bRotationByControllerEnabled = true;
115
116 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "PixoVR")
117 bool bTeleportSoundsEnabled = false;
118
119 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "PixoVR", meta = (EditCondition = "bTeleportSoundsEnabled", EditConditionHides))
120 USoundCue* TeleportSoundCue;
121
122 FOnTeleportationActivated& OnTeleportationActivated() { return OnTeleportationActivatedEvent; };
123
124 /****************************** Laser ****************************/
125 UFUNCTION(BlueprintCallable) void HandleLaserBeamLeftPressed();
126 UFUNCTION(BlueprintCallable) void HandleLaserBeamRightPressed();
127
128 UFUNCTION (BlueprintCallable, BlueprintPure)
129 void IsLaserActivated (bool& IsActivated, EControllerHand& Hand);
130
131 UFUNCTION(Server, Reliable, WithValidation)
132 void IsOverWidgetUse(EControllerHand Hand, bool InPressed);
133
134 UFUNCTION(Client, Reliable)
135 void PerformIsOverWidgetUse(EControllerHand Hand, bool InPressed);
136
137 UFUNCTION(Server, Reliable)
138 void HandleLaserSelectEvent(EControllerHand Hand, bool Pressed);
139 UFUNCTION(NetMulticast, Reliable)
140 void MultiHandleLaserSelectEvent(EControllerHand Hand, bool Pressed);
141 UFUNCTION()
142 void HandleLaserSelect(EControllerHand Hand, bool Pressed);
143
144 UFUNCTION()
145 void SpawnLaserBeam(EControllerHand Hand, bool InActivate);
146
147 //Laser Beam Select
148
149 void HandleLaserSelectLeft();
150 void HandleLaserReleaseLeft();
151 void HandleLaserSelectRight();
152 void HandleLaserReleaseRight();
153
155 UFUNCTION(BlueprintCallable, Server, Reliable, WithValidation, Category = "PixoVR")
156 void ActivateLaserBeam(EControllerHand Hand, bool InActivate);
157
158 UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category ="PixoVR")
159 void HandleHandAnimationLaser(EControllerHand Hand);
160
161 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
162 FName LeftLaserBeamSocket;
163
164 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
165 FName RightLaserBeamSocket;
166
167 UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR")
168 APixoVRLaser* LaserControllerLeft;
169
170 UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR")
171 APixoVRLaser* LaserControllerRight;
172
173 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "PixoVR")
174 bool bLeftLaserBeamIsActiveOnStart;
176 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "PixoVR")
177 bool bRightLaserBeamIsActiveOnStart;
178
179 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
180 TSubclassOf<APixoVRLaser> LaserControllerClass;
181
182 UPROPERTY(BlueprintReadOnly, Replicated)
183 bool bActivateLeftLaser;
184
185 UPROPERTY(BlueprintReadOnly, Replicated)
186 bool bActivateRightLaser;
187
188 /********************************* WristMenu *********************************/
189 UFUNCTION(BlueprintCallable)
190 void HandleActivateWristMenuPressed();
191
192 UFUNCTION(BlueprintCallable)
193 void HandleSelectWristMenuItemPressed();
194
195 UFUNCTION(BlueprintCallable)
196 void SelectWristMenu(EControllerHand Hand);
197
198 UFUNCTION(BlueprintCallable)
199 void HandleActivateWristMenuPressedLeft();
200
201 UFUNCTION(BlueprintCallable)
202 void HandleActivateWristMenuPressedRight();
203
204 UFUNCTION(Server, Reliable, WithValidation)
205 void SpawnWristMenu();
206
207 UFUNCTION(Server, Reliable, WithValidation)
208 void SpawnProgressBar();
209
211 UFUNCTION(BlueprintCallable, Server, Reliable, WithValidation, Category = "PixoVR")
212 void ActivateWristMenu(EControllerHand Hand);
214 UFUNCTION(BlueprintCallable, Server, Reliable, WithValidation, Category = "PixoVR")
215 void ActivateProgressBar(EControllerHand Hand, bool InActivate);
216
217 virtual void HandleSelectWristMenuItemPressedLeft();
218 virtual void HandleSelectWristMenuItemPressedRight();
219
220 virtual void HandleWristMenuItem1Pressed();
221 virtual void HandleWristMenuItem2Pressed();
222 virtual void HandleWristMenuItem3Pressed();
223 virtual void HandleWristMenuItem4Pressed();
224 virtual void HandleWristMenuItem5Pressed();
225 virtual void HandleWristMenuItem6Pressed();
226 virtual void HandleWristMenuItem7Pressed();
227 virtual void HandleWristMenuItem8Pressed();
228
229 virtual void HandleWristMenuDoubleTap(FKey InputKey);
230
231 UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "PixoVR")
232 USceneComponent* WristMenuLoc;
233
234 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
235 TSubclassOf<APixoVRWristMenu> WristMenuClass;
236
237 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
238 TSubclassOf<APixoVRCircleProgress> ProgressBarClass;
239
240 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
241 FName WristMenuSocket;
242
243 UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR", meta = (AllowPrivateAccess = "true"))
244 APixoVRWristMenu* WristMenu;
245
246 UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "PixoVR", meta = (AllowPrivateAccess = "true"))
247 UPixoVRLongHoldComponent* LongHoldComponent;
248
249 UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR", meta = (AllowPrivateAccess = "true"))
251
252 FVector MirroredWristMenuScale;
253
254 UPROPERTY(BlueprintReadOnly, VisibleAnywhere, Replicated, Category= "PixoVR")
255 EControllerHand CurrentWristMenuHand;
256
257 UPROPERTY(BlueprintAssignable)
258 FOnWristMenuActivated OnWristMenuActivated;
259
260 /****************************************************************/
261
262 virtual void TurnVRByAxis(float Value);
263 virtual void TurnVRLeft();
264 virtual void TurnVRRight();
265
267 UFUNCTION(NetMulticast, Reliable)
268 void ActivateFPSMode(bool Enable);
269
270 void MoveForward(float Value);
271 void MoveRight(float Value);
272 void TurnAtRate(float Rate);
273 void LookUpAtRate(float Rate);
274
275 /****************************** Hands ****************************/
276 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Hands")
277 TSubclassOf<APixoVRHand> VRHandClass;
278
279 UPROPERTY(BlueprintReadOnly, Category = "Hands")
280 APixoVRHand* VRHandLeft;
281 UPROPERTY(BlueprintReadOnly, Category = "Hands")
282 APixoVRHand* VRHandRight;
283
284 UFUNCTION(BlueprintCallable, Category = "Hands")
285 virtual void GrabRightPressed();
286 UFUNCTION(BlueprintCallable, Category = "Hands")
287 virtual void GrabLeftPressed();
288 UFUNCTION(BlueprintCallable, Category = "Hands")
289 virtual void GrabRightReleased();
290 UFUNCTION(BlueprintCallable, Category = "Hands")
291 virtual void GrabLeftReleased();
292
293 void ReleasedRightHand();
294 void ReleasedLeftHand();
295
302 UFUNCTION(BlueprintCallable, Category = "Hands")
303 AActor* SpawnActorInHand(TSubclassOf<AActor> ActorClass, bool RightHand);
304
305 UFUNCTION(BlueprintCallable, Category = "Hands")
306 void ResetHandHoldingObject();
311 UFUNCTION(BlueprintCallable, Category = "Hands")
312 void ResetHand(bool RightHand);
313 bool HoldToolRight;
314 bool HoldToolLeft;
315
316 UFUNCTION(BlueprintCallable)
317 void ShowTool(EControllerHand Hand, AActor* Tool);
318
319 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
320 FName ToolSocket;
321
322 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Fade")
323 UStaticMeshComponent* FadeSphere;
325 UPROPERTY(BlueprintAssignable, Category = "Hands")
326 FOnHandGrabAction OnHandGrabAction;
327
328 UPROPERTY(BlueprintAssignable, Category = "Hands")
329 FOnCameraRotatedByController OnCameraRotatedByController;
330
331 /****************************** Hints ****************************/
332 UPROPERTY(BlueprintReadOnly)
333 UHintManager* HintManager;
334
335 UFUNCTION(BlueprintCallable, Category = "Hint")
336 void ActivateHint();
337 UFUNCTION(BlueprintCallable, Category = "Hint")
338 void DeactivateHint();
339
340 float BaseTurnRate;
341 float BaseLookUpRate;
342 float DeflectionAngle = 30.0f;
343
344 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="PixoVR", Meta=(Tooltip="If checked, Laser, Teleporter and Wrist Menu input handling will be disabled."))
345 bool bDisableToolsInputBindings;
346
347 UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category="PixoVR")
348 UDataTable* InputsTable;
349
350 UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "PixoVR", meta = (AllowPrivateAccess = "true"))
351 UStaticMeshComponent* Head;
353 UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "PixoVR", meta = (AllowPrivateAccess = "true"))
354 UStaticMeshComponent* Body;
355
356 FVector2D LastTeleportLeftDirectionVector;
357 FVector2D LastTeleportRightDirectionVector;
358
359 FKey LastPressedKey;
360
361private:
362 UFUNCTION()
363 void PlayerDestroyed(AActor* Act);
364
365 UPROPERTY()
366 UPixoVRInputAdapter* InputAdapter;
367
368 bool bFPSMode;
369
370 FOnTeleportationActivated OnTeleportationActivatedEvent;
371
372 UPROPERTY(Replicated)
373 bool bIsOverWidgetUse = false;
374};
DECLARE_LOG_CATEGORY_EXTERN(LogPixoVRCharacter, Log, All)
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnWristMenuActivated, EControllerHand, Hand)
DECLARE_MULTICAST_DELEGATE_TwoParams(FOnTeleportationActivated, EControllerHand, bool)
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnHandGrabAction, bool, Pressed, bool, RightGrab)
Pixo VR Character This class represents the main character in the Pixo VR game. It extends the AVRCha...
FName LeftTeleporterSocket
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
APixoVRCircleProgress * ProgressBar
UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR", meta = (AllowPrivateAccess = "true"))
bool bActivateRightLaser
UPROPERTY(BlueprintReadOnly, Replicated)
float DefaultPlayerHeight
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "PixoVR")
bool bActivateLeftLaser
UPROPERTY(BlueprintReadOnly, Replicated)
bool bLeftLaserBeamIsActiveOnStart
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "PixoVR")
void HandleLaserSelectEvent(EControllerHand Hand, bool Pressed)
UFUNCTION(Server, Reliable)
EControllerHand CurrentWristMenuHand
UPROPERTY(BlueprintReadOnly, VisibleAnywhere, Replicated, Category= "PixoVR")
FVector2D LastTeleportLeftDirectionVector
FOnCameraRotatedByController OnCameraRotatedByController
UPROPERTY(BlueprintAssignable, Category = "Hands")
TSubclassOf< APixoVRCircleProgress > ProgressBarClass
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
APixoVRLaser * LaserControllerRight
UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR")
void HandleTeleportLeftRight(float Value)
UFUNCTION(Server, Unreliable, WithValidation)
void IsOverWidgetUse(EControllerHand Hand, bool InPressed)
UFUNCTION(Server, Reliable, WithValidation)
USoundCue * TeleportSoundCue
UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "PixoVR", meta = (EditCondition = "bTeleportSo...
FName LeftLaserBeamSocket
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
FOnTeleportationActivated OnTeleportationActivatedEvent
APixoVRHand * VRHandLeft
UPROPERTY(BlueprintReadOnly, Category = "Hands")
void ActivateWristMenu(EControllerHand Hand)
Activate/Deactivate the Wrist Menu.
void HandleHandAnimationLaser(EControllerHand Hand)
UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category ="PixoVR")
TSubclassOf< ATeleporterBase > TeleportControllerClass
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
TSubclassOf< APixoVRWristMenu > WristMenuClass
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
TSubclassOf< APixoVRLaser > LaserControllerClass
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
UDataTable * InputsTable
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category="PixoVR")
void PerformIsOverWidgetUse(EControllerHand Hand, bool InPressed)
UFUNCTION(Client, Reliable)
FName RightLaserBeamSocket
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
UHintManager * HintManager
UPROPERTY(BlueprintReadOnly)
FName RightTeleporterSocket
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
FVector MirroredWristMenuScale
UStaticMeshComponent * Body
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "PixoVR", meta = (AllowPrivateAccess = "tru...
bool bRightLaserBeamIsActiveOnStart
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "PixoVR")
void HandleTeleportLeftUp(float Value)
UFUNCTION(Server, Unreliable, WithValidation)
FVector2D LastTeleportRightDirectionVector
UPixoVRLongHoldComponent * LongHoldComponent
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "PixoVR", meta = (AllowPrivateAccess = "tru...
UStaticMeshComponent * Head
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "PixoVR", meta = (AllowPrivateAccess = "tru...
void ActivateProgressBar(EControllerHand Hand, bool InActivate)
UFUNCTION(BlueprintCallable, Server, Reliable, WithValidation, Category = "PixoVR")
APixoVRHand * VRHandRight
UPROPERTY(BlueprintReadOnly, Category = "Hands")
APixoVRWristMenu * WristMenu
UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR", meta = (AllowPrivateAccess = "true"))
void MultiHandleLaserSelectEvent(EControllerHand Hand, bool Pressed)
UFUNCTION(NetMulticast, Reliable)
APixoVRLaser * LaserControllerLeft
UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR")
void MulticastActivateTeleporter(EControllerHand Hand, bool InActivate)
UFUNCTION(BlueprintCallable, NetMulticast, Reliable, Category = "PixoVR")
void ActivateLaserBeam(EControllerHand Hand, bool InActivate)
Activate/Deactivate the Laser-beam.
FOnTeleportationActivated & OnTeleportationActivated()
bool bDisableToolsInputBindings
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="PixoVR", Meta=(Tooltip="If checked,...
USceneComponent * WristMenuLoc
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "PixoVR")
bool bLaserBeamActive
UPROPERTY(BlueprintReadWrite, Category = "PixoVR")
UStaticMeshComponent * FadeSphere
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Fade")
void HandleTeleportRightRight(float Value)
UFUNCTION(Server, Unreliable, WithValidation)
UPixoVRInputAdapter * InputAdapter
UPROPERTY()
void ActivateFPSMode(bool Enable)
For Windows.
ATeleporterBase * TeleportControllerRight
UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR")
ATeleporterBase * TeleportControllerLeft
UPROPERTY(BlueprintReadOnly, Replicated, Category = "PixoVR")
TSubclassOf< APixoVRHand > VRHandClass
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Hands")
void HandleTeleportRightUp(float Value)
UFUNCTION(Server, Unreliable, WithValidation)
FName ToolSocket
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
FName WristMenuSocket
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PixoVR")
FOnHandGrabAction OnHandGrabAction
UPROPERTY(BlueprintAssignable, Category = "Hands")
FOnWristMenuActivated OnWristMenuActivated
UPROPERTY(BlueprintAssignable)
void NotifyActivateTeleporter(EControllerHand Hand, bool InActivate)
UFUNCTION(BlueprintCallable, Server, Reliable, WithValidation, Category = "PixoVR")
void SpawnWristMenu()
UFUNCTION(Server, Reliable, WithValidation)
void SpawnProgressBar()
UFUNCTION(Server, Reliable, WithValidation)
Class representing a circular progress indicator in PixoVR. The circle progress can be updated to dis...
APixoVRHand is an actor class that represents a hand in the VR environment.
Definition PixoVRHand.h:99
Class for VR laser interaction. It can interact with widget buttons or actors derived from IPixoVRInt...
Definition PixoVRLaser.h:23
Class for VR teleporter functionality. It allows teleportation using visual indicators.
A actor class representing the PixoVR wrist menu. The wrist menu allows users to interact with menu i...
UCLASS(Abstract)
Manager that provides functionality for managing hint activation events.
Definition HintManager.h:19
A class for resolving and managing input mappings for different platforms.
Component for handling long hold functionality in PixoVR. Allows execution of a function when a butto...