Я использую Raycast, чтобы определить, есть ли плитка ниже NP C. Это тактическая RPG 3D игра.
Однако существует проблема с происхождением raycast, потому что он не обнаруживает плитку, даже если на ней NP C, как вы можете видеть на рисунке.
Плеер находится над плиткой
Я использую этот код для создания raycast:
public void DetectGround()
{
float rayRange = 10f;
rayDown.origin = transform.position + (-transform.up);
rayDown.direction = -transform.up;
float duration = 15f;
Vector3 Direction = transform.TransformDirection(-Vector3.up) * 10;
Debug.DrawRay(rayDown.origin, Direction, Color.red, duration);
if(Physics.Raycast(rayDown, out hitDown))
{
Debug.Log(hitDown.transform.tag);
}
}
Как я могу изменить его источник, чтобы начать немного дальше?