5#include "CoreMinimal.h"
6#include "Components/ActorComponent.h"
11#include "WeArtHandController.generated.h"
13UCLASS( ClassGroup=(Custom), meta=(BlueprintSpawnableComponent) )
14class WEARTPLUGIN_API UWeArtHandController :
public UActorComponent
20 UWeArtHandController();
22 UPROPERTY(EditAnywhere)
23 bool IsHandGrabInvisible = true;
25 UPROPERTY(BlueprintReadWrite)
28 UFUNCTION(BlueprintCallable, Category = "WEART HandController")
29 void SetIsHandGrabInvisible(
bool value);
31 UFUNCTION(BlueprintCallable, Category = "WEART HandController")
32 bool GetIsHandGrabInvisible();
36 virtual
void BeginPlay() override;
38 UFUNCTION(BlueprintCallable)
39 void Init(UWeArtThimbleTrackingObject* thumbTracking, UWeArtThimbleTrackingObject* indexTracking, UWeArtThimbleTrackingObject* middleTracking,
40 UWeArtHapticObject* thumbHaptic, UWeArtHapticObject* indexHaptic, UWeArtHapticObject* middleHaptic);
46 void BeginOverlap(AActor* MyOverlappedActor, AActor* OtherActor);
48 void EndOverlap(AActor* MyOverlappedActor, AActor* OtherActor);
50 void CheckHandClosingState(
void);
51 void HandleGraspingState(
void);
53 UWeArtThimbleTrackingObject* thumbTrackingObject;
54 UWeArtThimbleTrackingObject* indexTrackingObject;
55 UWeArtThimbleTrackingObject* middleTrackingObject;
56 UWeArtHapticObject* thumbHapticObject;
57 UWeArtHapticObject* indexHapticObject;
58 UWeArtHapticObject* middleHapticObject;
60 UWeArtTouchableObject* touchedObjectByThumb;
61 UWeArtTouchableObject* touchedObjectByIndex;
62 UWeArtTouchableObject* touchedObjectByMiddle;
63 UWeArtTouchableObject* touchedObject;
67 bool initialized = false;
71 virtual
void TickComponent(
float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) override;
73 bool foundGraspEvents;
GraspingState
Definition: WeArtCommon.h:40
@ Released
Definition: WeArtCommon.h:42
HandSide
Definition: WeArtCommon.h:7
HandClosingState
Definition: WeArtCommon.h:32
@ Open
Definition: WeArtCommon.h:33
Definition: WeArtGraspEvents.h:16