본문 바로가기

Unreal/Udemy 강의

Unreal Engine 4 C++ The Ultimate Shooter Course Section 4-5

Aim Look Sensitivity

이번엔 FPS 게임의 필수 항목이라고도 볼 수 있는 감도에 대해서 조절해보자.

가까우면 보통 감도가 느려야 맞추기가 수월하니 이를 목표로 조정할 것이다.

 

처음에 우리는 좌우 화살표를 통해 캐릭터가 회전할 수 있도록 하였다.

우선 이와 관련된 변수들을 우선 선언해주자.

평상시와 조준시에 대한 TurnRate와 LookUprate 값들 이다.

 

마찬가지로 생성자에서 초기화 해주자.

 

조준 시와 비조준 시에 대해 값을 설정해주는 함수를 만들어 주자.

매 순간 체크를 해야하므로 이를 Tick 함수 내에 위치시켜주면 된다.

 

다음으로 핵심이라고 할 수 있는 마우스에 대한 감도도 조절해주자.

기존에 AddControllerPitchInput와 같은 함수로 간단하게 했던 것을 직접 함수를 생성하여 대체해주자.

 

마찬가지로 관련된 변수를 선언해주자.

그리고 이전과 포함하여 TurnRate/LookUpRate 값들을 언리얼에서 클래스 기본값에서만 수정가능하도록 바꿔주었다.

 

그리고 마찬가지로 생성자에서 초기화해주자.

 

다음으로 기존 AddControllerYawInput / AddControllerPitchInput 함수에 조준 비조준시에 대한 배율을 넘겨주자.

기존에 설정한 TurnRate/LookUpRate 변수들을 조준 비조준시에 따라 할당하여 배율을 곱하게 된다.

이때 배율 값은 0~1 사이 이므로 헤더에서 선언했던 변수에 추가적인 내용을 작성해주었다.

 

ClampMin = "0.0", ClampMax  = "1.0"을 통해서 실제 값 범위를 제한하고,

UIMin = "0.0, UIMax = "1.0"을 통해서 에디터 UI에서 슬라이더 등을 통해 값을 조정할 때 범위를 제한해준다.

 

블루프린트 클래스에서 이제 관련된 값들을 편집할 수 있으므로,

직접 테스트해보고 마음에 들지 않으면 자유롭게 변경이 가능하다.