Справочники Unity C# OnMouseDrag

Что такое OnMouseDrag в Unity C#?

Метод OnMouseDrag является встроенным методом Unity, который вызывается каждый раз, когда пользователь удерживает нажатой кнопку мыши над объектом с коллайдером. Это позволяет реализовать взаимодействие с объектами в сцене через перетаскивание или другие действия, связанные с удерживанием мыши.


Основные характеристики метода OnMouseDrag
  1. Вызывается при удерживании мыши: Метод срабатывает, если указатель мыши находится над объектом с коллайдером, и кнопка мыши удерживается.
  2. Не требует ручного вызова: Unity автоматически вызывает этот метод, если у объекта есть компонент Collider.
  3. Идеален для перетаскивания: Часто используется для реализации механики перетаскивания объектов в сцене.
using UnityEngine;

public class DragObject : MonoBehaviour
{
    private Vector3 offset;

    // Вызывается при удерживании мыши на объекте
    void OnMouseDrag()
    {
        // Перемещаем объект за курсором мыши
        Vector3 mousePosition = Input.mousePosition;
        mousePosition.z = Camera.main.WorldToScreenPoint(transform.position).z; // Глубина

        Vector3 worldPosition = Camera.main.ScreenToWorldPoint(mousePosition);
        transform.position = worldPosition;
    }
}
Комментарии
Добавить комментарий

Пока комментариев нет