Що таке OnMouseDrag в Unity C#?
Метод OnMouseDrag є вбудованим методом Unity, який викликається кожного разу, коли користувач утримує натиснутою кнопку миші над об'єктом з колайдером. Це дозволяє реалізувати взаємодію з об'єктами в сцені через перетягування або інші дії, пов'язані з утриманням миші.
OnMouseDrag
- Викликається при утриманні миші: Метод спрацьовує, якщо вказівник миші знаходиться над об'єктом з колайдером, і кнопка миші утримується.
- Не потребує ручного виклику: Unity автоматично викликає цей метод, якщо у об'єкта є компонент
Collider. - Ідеальний для перетягування: Часто використовується для реалізації механіки перетягування об'єктів у сцені.
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;
}
}
Коментарі