Прыжок по неровной поверхности
Проблема заключается в том, на некоторых поверхностях не прыгает игрок ( Например: Встав по центру куба 1х1 он прыгает, отойти на 1 юнит в сторону игрок не прыгает) Как это исправить? Код в придачу:
private void OnJump()
{
if (_isGrounded == true)
{
deltaY = 0.0f;
if (Input.GetButtonDown("Jump"))
{
deltaY = jumpForce;
}
}
else
{
deltaY -= fallSpeed * Time.deltaTime;
}
}
private void OnCheckGrounded()
{
Ray ray = new Ray(transform.position, -transform.up);
RaycastHit hit;
float distanceToHit = 1.1f;
if (Physics.Raycast(ray, out hit, distanceToHit))
{
_isGrounded = true;
}
else
{
_isGrounded = false;
}
}