本文整理汇总了C++中APlayerController::GetControlRotation方法的典型用法代码示例。如果您正苦于以下问题:C++ APlayerController::GetControlRotation方法的具体用法?C++ APlayerController::GetControlRotation怎么用?C++ APlayerController::GetControlRotation使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类APlayerController
的用法示例。
在下文中一共展示了APlayerController::GetControlRotation方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: TickComponent
void UTDCSpectatorPawnMovement::TickComponent(float DeltaTime, enum ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction)
{
Super::TickComponent(DeltaTime, TickType, ThisTickFunction);
if (!PawnOwner || !UpdatedComponent)
{
return;
}
APlayerController* PlayerController = Cast<APlayerController>(PawnOwner->GetController());
if (PlayerController && PlayerController->IsLocalController())
{
if (!bInitialLocationSet)
{
PawnOwner->SetActorRotation(PlayerController->GetControlRotation());
PawnOwner->SetActorLocation(PlayerController->GetSpawnLocation());
bInitialLocationSet = true;
}
FVector MyLocation = UpdatedComponent->GetComponentLocation();
ATDCSpectatorPawn* SpectatorPawn = Cast<ATDCSpectatorPawn>(PlayerController->GetSpectatorPawn());
if ((SpectatorPawn != NULL) && (SpectatorPawn->GetCameraComponent() != NULL))
{
SpectatorPawn->GetCameraComponent()->ClampCameraLocation(PlayerController, MyLocation);
}
UpdatedComponent->SetWorldLocation(MyLocation, false);
}
}
示例2: HandleSeamlessTravelPlayer
void AGameModeBase::HandleSeamlessTravelPlayer(AController*& C)
{
// Default behavior is to spawn new controllers and copy data
APlayerController* PC = Cast<APlayerController>(C);
if (PC && PC->Player)
{
// We need to spawn a new PlayerController to replace the old one
APlayerController* NewPC = SpawnPlayerController(PC->IsLocalPlayerController() ? ROLE_SimulatedProxy : ROLE_AutonomousProxy, PC->GetFocalLocation(), PC->GetControlRotation());
if (NewPC)
{
PC->SeamlessTravelTo(NewPC);
NewPC->SeamlessTravelFrom(PC);
SwapPlayerControllers(PC, NewPC);
PC = NewPC;
C = NewPC;
}
else
{
UE_LOG(LogGameMode, Warning, TEXT("Failed to spawn new PlayerController for %s (old class %s)"), *PC->GetHumanReadableName(), *PC->GetClass()->GetName());
PC->Destroy();
return;
}
}
InitSeamlessTravelPlayer(C);
// Initialize hud and other player details, shared with PostLogin
GenericPlayerInitialization(C);
if (PC)
{
// This may spawn the player pawn if the game is in progress
HandleStartingNewPlayer(PC);
}
}