☝️

[UE4]カメラを回転する処理を入れてもカメラが回転しない

2021/03/07に公開

入力でカメラを回転する処理を入れても回転せず困った。以下書いたコード。

void AMyCharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent)
{
	Super::SetupPlayerInputComponent(PlayerInputComponent);

	InputComponent->BindAxis("TurnRate", this, &AGothicNightCharacter::TurnRate);
	InputComponent->BindAxis("LookUpRate", this, &AGothicNightCharacter::LookUpRate);
}

void AMyCharacter::TurnRate(float Value) {
	float DeltaSeconds = GetWorld()->GetDeltaSeconds();

	float NewYaw = Value * BaseTurnRate * DeltaSeconds;
	AddControllerYawInput(NewYaw);
}

void AGothicNightCharacter::LookUpRate(float Value) {
	float DeltaSeconds = GetWorld()->GetDeltaSeconds();

	float NewPitch = Value * BaseLookUpRate * DeltaSeconds;
	AddControllerPitchInput(NewPitch);
}

原因

SpringArmComponentのカメラセッティングで「Use Pawn Control Rotation」にチェックを入れる必要があった。

Discussion