Вы не должны использовать для этого функции обратного вызова OnMouseDown
и OnMouseUp
, потому что для этого потребуется получить позицию касания с помощью Input.mousePosition
на настольных ПК и Input.touches
на мобильномустройства.
Это должно быть сделано с функциями OnPointerDown
и OnPointerUp
, которые дают вам PointerEventData
в качестве параметра.Вы можете получить доступ к позиции указателя с помощью PointerEventData.position
.Он будет работать как на мобильных, так и на настольных устройствах без необходимости писать разные коды для каждой платформы.Обратите внимание, что вы должны реализовать интерфейсы IPointerDownHandler
и IPointerUpHandler
для вызова этих функций.
public void OnPointerDown(PointerEventData eventData)
{
Debug.Log("Mouse Down: " + eventData.position);
}
public void OnPointerUp(PointerEventData eventData)
{
Debug.Log("Mouse Up: " + eventData.position);
}
Если у вас возникли проблемы с ним, вы всегда можете посетить раздел устранения неполадок в этой записи , чтобы узнать, почему.