Контекст: я использую FixedJoystick в пакете Joystick Pack от Fenerax Studios в хранилище ресурсов Unity в моем проекте.
Проблема заключается в том, что всякий раз, когда я касаюсь джойстика (даже не перемещая его), ручка немедленно перемещается вверхний правый угол и моя модель в результате движется вниз.
Ниже приведено изображение, иллюстрирующее проблему с джойстиком

Красный крестна изображении указывает, где пользователь касается джойстика, ручка не перемещается туда, как ожидалось, а вместо этого прыгает вверх.
Вот код:
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class FixedJoystick : Joystick
{
Vector2 joystickPosition = Vector2.zero;
public GameObject heldDownBlockRegion;
private Camera cam = new Camera();
private bool inARMode = true;
void Start()
{
joystickPosition = RectTransformUtility.WorldToScreenPoint(cam, background.position);
gameObject.SetActive(false);
}
public override void OnDrag(PointerEventData eventData)
{
Vector2 direction = eventData.position - joystickPosition;
inputVector = (direction.magnitude > background.sizeDelta.x / 2f) ? direction.normalized : direction / (background.sizeDelta.x / 2f);
ClampJoystick();
handle.anchoredPosition = (inputVector * background.sizeDelta.x / 2f) * handleLimit;
}
public override void OnPointerDown(PointerEventData eventData)
{
heldDownBlockRegion.SetActive(true);
OnDrag(eventData);
}
public override void OnPointerUp(PointerEventData eventData)
{
heldDownBlockRegion.SetActive(false);
inputVector = Vector2.zero;
handle.anchoredPosition = Vector2.zero;
}
public void changeToAR()
{
showJoyStick(false);
inARMode = true;
}
public void changeToNonAR()
{
inARMode = false;
}
public void showJoyStick(bool action)
{
if (!inARMode)
{
if (action == false)
{
heldDownBlockRegion.SetActive(false);
inputVector = Vector2.zero;
handle.anchoredPosition = Vector2.zero;
}
gameObject.SetActive(action);
}
}
}
Я довольно новичок в этом и был бы очень признателен за любую помощь.Спасибо!