最後の更新からのデルタポインタ
The delta vector provides the 2D location as the user moves the pointer. It is updated every frame. The 2D location starts at Vector2(0.0f, 0.0f) when OnBeginDrag
is called. As OnDrag
is called the delta is updated. The value of delta can change greatly.
In the example below deltaValue
will start at zero. OnDrag
will change the value of dataValue
as delta changes.
// Display deltaValue. This is changed by the delta passed into OnDrag.
using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI;
public class ExampleScript : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler { private float timeCount; private Vector2 deltaValue = Vector2.zero;
public void OnBeginDrag(PointerEventData data) { deltaValue = Vector2.zero; }
public void OnDrag(PointerEventData data) { deltaValue += data.delta; if (data.dragging) { timeCount += Time.deltaTime; if (timeCount > 0.5f) { timeCount = 0.0f; Debug.Log("delta: " + deltaValue); } } }
public void OnEndDrag(PointerEventData data) { deltaValue = Vector2.zero; } }