diff --git a/Source/DisplayClusterExtensions/Private/VRPawnMovement.cpp b/Source/DisplayClusterExtensions/Private/VRPawnMovement.cpp index b6c5b9d1e8634c6bb28ebd3fb41143c5c8ed78bd..ec71285feb6c26c91db75c51cac96edaf2b5a562 100644 --- a/Source/DisplayClusterExtensions/Private/VRPawnMovement.cpp +++ b/Source/DisplayClusterExtensions/Private/VRPawnMovement.cpp @@ -4,8 +4,6 @@ UVRPawnMovement::UVRPawnMovement(const FObjectInitializer& ObjectInitializer) : Super(ObjectInitializer) { - - CapsuleColliderComponent = CreateDefaultSubobject<UCapsuleComponent>(TEXT("CapsuleCollider")); CapsuleColliderComponent->SetCollisionEnabled(ECollisionEnabled::QueryAndPhysics); CapsuleColliderComponent->SetCollisionResponseToAllChannels(ECollisionResponse::ECR_Ignore); @@ -19,14 +17,14 @@ void UVRPawnMovement::TickComponent(float DeltaTime, enum ELevelTick TickType, F FVector PositionChange = GetPendingInputVector(); - if (NavigationMode == EVRNavigationModes::Walk) + if (NavigationMode == EVRNavigationModes::NAV_WALK) { PositionChange.Z = 0.0f; ConsumeInputVector(); AddInputVector(PositionChange); } - if(NavigationMode == EVRNavigationModes::Fly || NavigationMode == EVRNavigationModes::Walk) + if(NavigationMode == EVRNavigationModes::NAV_FLY || NavigationMode == EVRNavigationModes::NAV_WALK) { MoveByGravityOrStepUp(DeltaTime); CheckForPhysWalkingCollision(); @@ -37,7 +35,7 @@ void UVRPawnMovement::TickComponent(float DeltaTime, enum ELevelTick TickType, F } } - if(NavigationMode == EVRNavigationModes::None) + if(NavigationMode == EVRNavigationModes::NAV_NONE) { ConsumeInputVector(); } @@ -65,7 +63,6 @@ void UVRPawnMovement::SetCameraComponent(UCameraComponent* NewCameraComponent) CapsuleColliderComponent->SetupAttachment(CameraComponent); } - void UVRPawnMovement::SetCapsuleColliderToUserSize() { float CharachterSize = abs(UpdatedComponent->GetComponentLocation().Z - CameraComponent->GetComponentLocation().Z); @@ -120,7 +117,7 @@ void UVRPawnMovement::MoveByGravityOrStepUp(float DeltaSeconds) ShiftVertically(DistanceDifference, UpSteppingAcceleration, DeltaSeconds, 1); } //Gravity (only in Walk Mode) - else if (NavigationMode==EVRNavigationModes::Walk && ((HitDetailsMultiLineTrace.bBlockingHit && HitDetailsMultiLineTrace.Distance > MaxStepHeight) || (HitDetailsMultiLineTrace.Actor == nullptr && HitDetailsMultiLineTrace.Distance != -1.0f))) + else if (NavigationMode==EVRNavigationModes::NAV_WALK && ((HitDetailsMultiLineTrace.bBlockingHit && HitDetailsMultiLineTrace.Distance > MaxStepHeight) || (HitDetailsMultiLineTrace.Actor == nullptr && HitDetailsMultiLineTrace.Distance != -1.0f))) { ShiftVertically(DistanceDifference, GravityAcceleration, DeltaSeconds, -1); } diff --git a/Source/DisplayClusterExtensions/Public/VRPawnMovement.h b/Source/DisplayClusterExtensions/Public/VRPawnMovement.h index e0ce022b6af28dac25450debaee40b2c0a0c0ca2..0eeee2e3b94195514731d446d5cb499cc790b6cf 100644 --- a/Source/DisplayClusterExtensions/Public/VRPawnMovement.h +++ b/Source/DisplayClusterExtensions/Public/VRPawnMovement.h @@ -22,10 +22,10 @@ UENUM(BlueprintType) enum class EVRNavigationModes : uint8 { - None UMETA(DisplayName = "None (no controller movement)"), - Ghost UMETA(DisplayName = "Ghost (flying, also through walls)"), - Fly UMETA(DisplayName = "Fly (prohibiting collisions)"), - Walk UMETA(DisplayName = "Walk (gravity and prohibiting collisions)") + NAV_NONE UMETA(DisplayName = "None (no controller movement)"), + NAV_GHOST UMETA(DisplayName = "Ghost (flying, also through walls)"), + NAV_FLY UMETA(DisplayName = "Fly (prohibiting collisions)"), + NAV_WALK UMETA(DisplayName = "Walk (gravity and prohibiting collisions)") }; UCLASS() @@ -41,7 +41,7 @@ public: void SetCameraComponent(UCameraComponent* NewCameraComponent); UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "VR Movement") - EVRNavigationModes NavigationMode = EVRNavigationModes::Walk; + EVRNavigationModes NavigationMode = EVRNavigationModes::NAV_WALK; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "VR Movement") float MaxStepHeight = 40.0f;