
Aim Look Sensitivity이번엔 FPS 게임의 필수 항목이라고도 볼 수 있는 감도에 대해서 조절해보자.가까우면 보통 감도가 느려야 맞추기가 수월하니 이를 목표로 조정할 것이다. 처음에 우리는 좌우 화살표를 통해 캐릭터가 회전할 수 있도록 하였다.우선 이와 관련된 변수들을 우선 선언해주자.평상시와 조준시에 대한 TurnRate와 LookUprate 값들 이다. 마찬가지로 생성자에서 초기화 해주자. 조준 시와 비조준 시에 대해 값을 설정해주는 함수를 만들어 주자.매 순간 체크를 해야하므로 이를 Tick 함수 내에 위치시켜주면 된다. 다음으로 핵심이라고 할 수 있는 마우스에 대한 감도도 조절해주자.기존에 AddControllerPitchInput와 같은 함수로 간단하게 했던 것을 직접 함수를 생성하..

Aiming State Machine현재는 항상 조준하는 상태이므로, 이를 스테이트 머신을 통해 자세 전환을 하도록 만들어주자.이를 위해 ShooterAnimInstance 클래스에 Aiming 여부에 대한 변수가 필요하다. 이는 기존의 ShooterCharacter 클래스에서도 선언했었다.따라서 해당 클래스에서 getter 함수를 만들어주자. 이제 이를 이용하여 ShooterAnimInstance 클래스에서 Aiming 여부를 얻어주자. 다음으로 새롭게 스테이트 머신을 생성해주자. 마찬가지로 state에 애니메이션도 할당해주자.기존에 Cached한 내용을 사용한다. Aiming의 경우 기존 내용을 또 Cached로 저장하고, 이를 사용해주자. 변환 조건은 Aiming의 상태에 따라 변화한다. 변환 시간..

Aiming PoseAiming 시에 포즈가 다소 이상하기에 이번엔 이를 위한 Aiming Pose를 만들어주자.기존 포즈와 blend를 통한 작업을 해주어야 하므로, 기존 애니메이션을 Cached로 저장해주자. 그리고 에셋 브라우저에서 RMB_AO_CC 를 검색해보면 Aiming 포즈를 취하는 애니메이션을 볼 수 있다.해당 애니메이션을 사용하기 위해 복사본으로 따로 저장하고, blend를 통해 사용할 것이므로 애디티브 기능을 꺼주자.한쪽은 기본이고 한쪽은 애디티브 애니메이션일 때 blend 결과가 비정상적일 수 있다. 이제 스테이트 머신을 만들어서 Aiming에 대한 애니메이션을 설정해주자. 이를 기존 애니메이션과 blend 작업을 해주자. 이 상태로 플레이를 해보면 기존의 사격시 반동 애니메이션이 사..