Following the Z Curve
저번 코드에 Interping이 끝났을 떄 Interping 여부를 false로 바꿔주는 것을 추가해주고 시작하자.
그리고 기존의 SelectButtonPreseed/SelectButtonReleased 함수를 수정해주자.
E 버튼을 눌렀을 때 트레이스한 아이템에 대해서 StartItemCurve를 호출해주자.
놓았을 때는 일단 아무것도 하지 않게 두었다,
이제 Z 값에 대해 커브 곡선을 이용해 보간을 시켜주자.
이를 위한 함수부터 생성해주자.
해당 함수는 Tick을 통해 실행될 것이다.
해당 함수에서는 우선 Interping 여부부터 체크해주자.
그리고 캐릭터와 ZCurve 값이 유효한지도 체크해주어야 한다.
이후에 경과시간을 우선적으로 구하고, 경과시간을 바탕으로 현재 경과시간에 해당하는 CurveValue를 구해준다.
이어서 아이템 위치와 카메라 보간 시작 위치를 구한다.
아이템의 위치와 카메라 보간 시작 위치에는 차이가 있어서 이 차이 값 Z에 대해서 따로 값을 저장해준다.
해당 값의 크기를 구해주고 이를 CurveValue과 곱해준 값을 아이템 로케이션 Z 값에 더해주면 카메라 Z 값 만큼 아이템 Z 값이 더해지게 된다.
이렇게 구한 위치 값을 할당해주자.
언리얼로 돌아가서 ZCurve를 할당해주자.
이제 E를 눌러서 무기를 교체 시도해보면 Z 값 만큼 위로 상승하여 잠시 대기했다가 다시 내려가는 것을 볼 수 있다.
이는 Curve 값을 기반으로 초기에 빠르게 상승 -> 잠시 대기 -> 다시 하락의 형태를 따라가는 것이다.
'Unreal > Udemy 강의' 카테고리의 다른 글
Unreal Engine 4 C++ The Ultimate Shooter Course Section 6-8 (0) | 2024.08.28 |
---|---|
Unreal Engine 4 C++ The Ultimate Shooter Course Section 6-7 (0) | 2024.08.28 |
Unreal Engine 4 C++ The Ultimate Shooter Course Section 6-5 (0) | 2024.08.27 |
Unreal Engine 4 C++ The Ultimate Shooter Course Section 6-4 (0) | 2024.08.27 |
Unreal Engine 4 C++ The Ultimate Shooter Course Section 6-3 (0) | 2024.08.27 |