MonoBehaviour.OnMouseUp()
Описание
Вызывается при освобождении кнопки мыши, пока указатель мыши находится над Collider, присоединенным к этому GameObject.
Ключевым фактором является то, где кнопка мыши освобождается, а не то, где она была изначально нажата:
- Если нажать кнопку мыши в любом месте, затем переместить курсор на коллайдер и отпустить,
OnMouseUpбудет вызвана на этом коллайдере. - Если нажать кнопку на коллайдере, отодвинуть мышь и отпустить, то
OnMouseUpне будет вызвана на этом коллайдере.
Для поведения, похожего на кнопку (требующего нажатия и освобождения одной и той же коллайдерной кнопки), используйте MonoBehaviour.OnMouseUpAsButton.
Это событие отправляется всем скриптам, прикрепленным к Collider. Эта функция не вызывает объекты, принадлежащие слою Игнорировать рассеивание лучей. Эта функция вызывает коллайдеры и коллайдеры 2D, помеченные как триггеры, когда следующие свойства установлены на true:
- Для 3D физики: Physics.queriesHitTriggers
- Для 2D физики: Physics2D.queriesHitTriggers
OnMouseUp может быть короутин.
Дополнительные ресурсы: OnMouseDown, OnMouseDrag.
Примечание: Новые проекты, созданные с этой версией Unity предварительно настроены для использования версии Input System чтобы поддерживать этот обратный вызов в вашем проекте, измените Активная обработка ввода установка в Настройки плеера либо Оба или Диспетчер ввода (старый). Использование только старого менеджера ввода не рекомендуется для новых проектов. Дополнительные сведения см. в Вводимые ресурсы.
// Register when mouse dragging has ended. OnMouseUp is called // when the mouse button is released.
using UnityEngine;
public class ExampleClass : MonoBehaviour { void OnMouseUp() { // If the user releases the mouse button while over the GameObject with this script attached, output this message Debug.Log("Drag ended!"); } }