Slope Not Blocked -

Vector3 groundNormal = GetGroundNormal(); float slopeAngle = Vector3.Angle(groundNormal, Vector3.up); if (slopeAngle > maxWalkableAngle && !isSliding)

currentVelocity = Vector3.zero; // Natural stop, not a block slope not blocked

// No artificial blocking even at low speed if (currentVelocity.magnitude < 0.01f && slopeAngle < maxWalkableAngle) Vector3 groundNormal = GetGroundNormal()