В настоящее время я делаю игру в Unity, в которой я хочу, чтобы игрок имел возможность перетаскивать объекты по экрану в зависимости от положения касания.Я создал скрипт, чтобы сделать это, и из того, что я знаю, в нем нет ошибок, и он должен позволять мне перетаскивать объект, к которому привязан скрипт, по экрану.Однако, когда я пытаюсь выполнить код, ничего не происходит.при прикосновении объект остается неподвижным и не движется вообще.Я даже попытался переключить его Input.GetTouch (0) .position на Input.mousePosition, чтобы увидеть, что проблема связана с моим телефоном, но эта работа также не работает.Кто-нибудь знает, как я мог бы решить эту проблему?
using UnityEngine;
using System.Collections;
using UnityEngine.EventSystems;
public class MoveBall : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler
{
public static GameObject WhiteBall;
Vector3 startPosition;
#region IBeginDragHandler implementation
public void OnBeginDrag(PointerEventData eventData)
{
WhiteBall = gameObject;
startPosition = transform.position;
}
#endregion
#region IDragHandler implementation
public void OnDrag(PointerEventData eventData)
{
transform.position = Input.GetTouch(0).position;
}
#endregion
#region IEndDragHandler implementation
public void OnEndDrag(PointerEventData eventData)
{
WhiteBall = null;
transform.position = startPosition;
}
#endregion
}