경사 체크 오류 수정
현재 경사 체크는 3점 탐지(제자리, 오른쪽, 앞쪽)로 기울기를 구하고 있다.
얇은 바닥이나 경사로의 끝쪽에 위치했을 경우 오른쪽 부분이 높이가 낮게 hit가 되어 제자리의 y좌표와 동일하게 설정하여 해결했었다.
하지만 특수한 경우에 지형의 모서리를 hit하거나 하면 잘못된 경사가 계산되기도 한다.

이런 경우는 조작감이 매우 떨어지는 경우이다.
따라서 이렇게 오탐지하는 경우에는 예외 처리가 필요하다.
정확한 경사 체크
우선 생각나는 방법으로는 전방에 찍힌 hit의 높이가 stepOffset을 넘으면 움직일 수 없게 만드는 방법이 있을 것 같다.
이는 높은 계단도 처리할 수 있을 것 같다.
public float stepOffset;
if (_playerBlackBoard.footTracker.isOnSlope && _playerBlackBoard.footTracker.heightDiff < _playerBlackBoard.playerMovementData.stepOffset)
근데 이 방법이 근본적인 해결 방법이 되지는 않았다.
결국 저 조건을 만족시키면서 가파른 경사로 판단되는 경우가 있기 때문이다.
즉, 진짜 경사로가 맞는지 확인하는 다른 방법이 필요할 것 같다.
slope판정 조건은 현재 계산한 각도만 판정한다.
isOnSlope = groundAngle > playerMovementData.slopeThreshold;
여기에 최대 앵글을 추가하여 오를 수 있는 최대 각도를 설정했다. 이 각도를 넘는 경사는 벽으로 판정할 것이다.
isOnSlope = groundAngle > playerMovementData.slopeThreshold && groundAngle < playerMovementData.maxClimbableAngle;
하지만 이 역시도 범위내에 들어오는 경사가 아닌 물체 혹은 지형이 경사로 판정 될 수 있다.
최종적으로 이를 해결하기 위해 선택한 방법은 충돌을 먼저 처리하는 것이다.
현재는 캐릭터의 Collider보다 더 넓은 범위를 탐색한다.
따라서 경사가 아닌 장애물에도 forward hit가 일어나 경사를 체크하게 된다.
이를 방지하기 위해 Collider내로 범위를 충분히 줄이면 충돌에 의해 이동하지 못하는 지역의 기울기를 체크하지 않게 된다.

