카메라를 조금 수정하다

카메라 지지대의 길이를 줄이고

카메라 지지대의 길이를 줄이고

카메라의 위치를 올리고

카메라의 위치를 올리고

FOV 값을 많이 줄였다

FOV 값을 많이 줄였다

GIF 2023-03-03 오후 9-45-26.gif

→ 이제 발이 잘 안보이고 보다 조금 확대가 되었다

카메라 축소 확대를 보다 부드럽게 하다

Untitled

// Called every frame
void AShooterCharacter::Tick(float DeltaTime)
{
	Super::Tick(DeltaTime);

	// Set Current Camera FOV
	if (bAiming)// Interpolate to zoomed FOV
		CameraCurrentFOV = FMath::FInterpTo(CameraCurrentFOV, CameraZoomedFOV, DeltaTime, ZoomInterpSpeed);
	else// Interpolate to defualt FOV
		CameraCurrentFOV = FMath::FInterpTo(CameraCurrentFOV, CameraDefaultFOV, DeltaTime, ZoomInterpSpeed);
	GetFollowCamera()->SetFieldOfView(CameraCurrentFOV);

}

Tick 함수 내부에서. FInterpTo 함수 를 사용해서 서서히 보간되는 값을 통해서 FOV 값을 수정했다

GIF 2023-03-03 오후 9-47-35.gif

속도 설정

속도는 Blueprint 에서 혹은 에디터에서 수정을 할 수 있도록 설정했기 때문에 BP 에서 수정이 가능하다.

과제 : Refactoring

음 , Tick 함수를 보다 작게 리팩토링하라고 하신다 그래서 나는 함수를 외부로 뺐다, 그런데 강의에서도 똑같이 했다 , 다만 함수명이 CameraInterpZoom 이다

void AShooterCharacter::CameraZoomInOut(const float Deltatime)
{	
	// Set Current Camera FOV
	if (bAiming)// Interpolate to zoomed FOV
		CameraCurrentFOV = FMath::FInterpTo(CameraCurrentFOV, CameraZoomedFOV, Deltatime, ZoomInterpSpeed);
	else// Interpolate to defualt FOV
		CameraCurrentFOV = FMath::FInterpTo(CameraCurrentFOV, CameraDefaultFOV, Deltatime, ZoomInterpSpeed);
	GetFollowCamera()->SetFieldOfView(CameraCurrentFOV);

}

Untitled

Quiz