Skip to content
Snippets Groups Projects
Commit 8282d43b authored by Ali Can Demiralp's avatar Ali Can Demiralp
Browse files

Merge branch 'develop'

parents 0d01fbd1 2c957ae5
Branches
No related tags found
No related merge requests found
...@@ -19,35 +19,21 @@ ADisplayClusterPawnCAVE::ADisplayClusterPawnCAVE(const FObjectInitializer& Objec ...@@ -19,35 +19,21 @@ ADisplayClusterPawnCAVE::ADisplayClusterPawnCAVE(const FObjectInitializer& Objec
RotatingComponent->bRotationInLocalSpace = false; RotatingComponent->bRotationInLocalSpace = false;
RotatingComponent->PivotTranslation = FVector::ZeroVector; RotatingComponent->PivotTranslation = FVector::ZeroVector;
RotatingComponent->RotationRate = FRotator::ZeroRotator; RotatingComponent->RotationRate = FRotator::ZeroRotator;
TranslationDirection = RootComponent;
} }
void ADisplayClusterPawnCAVE::OnForward_Implementation (float Value) void ADisplayClusterPawnCAVE::OnForward_Implementation (float Value)
{ {
if (Flystick) AddMovementInput(TranslationDirection->GetForwardVector(), Value);
{
if (IDisplayCluster::Get().GetClusterMgr()->IsMaster())
AddMovementInput(Flystick->GetForwardVector(), Value);
}
else
{
AddMovementInput((TranslationDirection ? TranslationDirection : RootComponent)->GetForwardVector(), Value);
}
} }
void ADisplayClusterPawnCAVE::OnRight_Implementation (float Value) void ADisplayClusterPawnCAVE::OnRight_Implementation (float Value)
{ {
if (Flystick) AddMovementInput(TranslationDirection->GetRightVector (), Value);
{
if (IDisplayCluster::Get().GetClusterMgr()->IsMaster())
AddMovementInput(Flystick->GetRightVector(), Value);
}
else
{
AddMovementInput((TranslationDirection ? TranslationDirection : RootComponent)->GetRightVector(), Value);
}
} }
void ADisplayClusterPawnCAVE::OnTurnRate_Implementation (float Rate ) void ADisplayClusterPawnCAVE::OnTurnRate_Implementation (float Rate )
{ {
if (Flystick) if (IDisplayCluster::Get().GetOperationMode() == EDisplayClusterOperationMode::Cluster)
{ {
if (!RotatingComponent->UpdatedComponent || !IDisplayCluster::Get().GetGameMgr() || !IDisplayCluster::Get().GetGameMgr()->GetActiveCamera()) return; if (!RotatingComponent->UpdatedComponent || !IDisplayCluster::Get().GetGameMgr() || !IDisplayCluster::Get().GetGameMgr()->GetActiveCamera()) return;
...@@ -62,7 +48,7 @@ void ADisplayClusterPawnCAVE::OnTurnRate_Implementation (flo ...@@ -62,7 +48,7 @@ void ADisplayClusterPawnCAVE::OnTurnRate_Implementation (flo
} }
void ADisplayClusterPawnCAVE::OnLookUpRate_Implementation(float Rate ) void ADisplayClusterPawnCAVE::OnLookUpRate_Implementation(float Rate )
{ {
if (Flystick) if (IDisplayCluster::Get().GetOperationMode() == EDisplayClusterOperationMode::Cluster)
{ {
// User-centered projection causes motion sickness on look up interaction hence not implemented. // User-centered projection causes motion sickness on look up interaction hence not implemented.
} }
...@@ -106,12 +92,12 @@ void ADisplayClusterPawnCAVE::Tick (flo ...@@ -106,12 +92,12 @@ void ADisplayClusterPawnCAVE::Tick (flo
{ {
Super::Tick(DeltaSeconds); Super::Tick(DeltaSeconds);
// Is this really necessary? if (IDisplayCluster::Get().GetOperationMode() == EDisplayClusterOperationMode::Cluster && !Flystick)
const float Mult = GetWorld()->GetWorldSettings()->WorldToMeters / 100.f; {
SetActorScale3D(FVector(Mult, Mult, Mult));
if (!Flystick && IDisplayCluster::Get().GetOperationMode() == EDisplayClusterOperationMode::Cluster)
Flystick = IDisplayCluster::Get().GetGameMgr()->GetNodeById(TEXT("flystick")); // There MUST be an scene node called flystick in the config. Flystick = IDisplayCluster::Get().GetGameMgr()->GetNodeById(TEXT("flystick")); // There MUST be an scene node called flystick in the config.
if (Flystick)
TranslationDirection = Flystick;
}
} }
void ADisplayClusterPawnCAVE::BeginDestroy () void ADisplayClusterPawnCAVE::BeginDestroy ()
{ {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment