Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
InputEventMouseMotion
Наследует: InputEventMouse < InputEventWithModifiers < InputEventFromWindow < InputEvent < Resource < RefCounted < Object
Представляет собой движение мыши или пера.
Описание
Сохраняет информацию о движении мыши или пера. Сюда входит относительное положение, абсолютное положение и скорость. См. Node._input().
Примечание: По умолчанию это событие генерируется только один раз за отрисованный кадр. Если вам нужна более точная отчетность о вводе, установите Input.use_accumulated_input на false, чтобы события генерировались как можно чаще. Если вы используете InputEventMouseMotion для рисования линий, рассмотрите возможность использования Geometry2D.bresenham_line(), чтобы избежать видимых пробелов в линиях, если пользователь быстро перемещает мышь.
Примечание: Это событие может генерироваться, даже если мышь не двигалась, как операционной системой, так и самим Godot. Если вам действительно нужно знать, переместилась ли мышь (например, чтобы отключить отображение подсказки), вам следует проверить, что relative.is_zero_approx() равно false.
Обучающие материалы
Свойства
|
||
|
||
|
||
|
||
|
||
|
||
|
Описания свойств
Возвращает true при использовании ластика на конце стилуса.
Примечание: Это свойство реализовано в Linux, macOS и Windows.
Представляет давление, которое пользователь оказывает на ручку. Диапазон от 0.0 до 1.0.
Vector2 relative = Vector2(0, 0) 🔗
Положение мыши относительно предыдущего положения (положение в последнем кадре).
Примечание: Поскольку InputEventMouseMotion может быть вызвано только при перемещении мыши, невозможно надежно определить, когда мышь прекратила движение, проверив это свойство. Может потребоваться отдельный короткий таймер.
Примечание: relation автоматически масштабируется в соответствии с коэффициентом масштабирования содержимого, который определяется настройками режима растяжения проекта. Это означает, что чувствительность мыши будет отличаться в зависимости от разрешения при использовании relation в скрипте, который обрабатывает прицеливание мыши с режимом мыши Input.MOUSE_MODE_CAPTURED. Чтобы избежать этого, используйте вместо этого screen_relative.
Vector2 screen_relative = Vector2(0, 0) 🔗
Немасштабированное положение мыши относительно предыдущего положения в системе координат экрана (положение в последнем кадре).
Примечание: Поскольку InputEventMouseMotion может быть выдано только при перемещении мыши, невозможно надежно определить, когда мышь прекратила движение, проверив это свойство. Может потребоваться отдельный короткий таймер.
Примечание: Эта координата не масштабируется в соответствии с коэффициентом масштабирования содержимого или вызовами InputEvent.xformed_by(). Это должно быть предпочтительнее, чем relative для наведения мыши при использовании режима мыши Input.MOUSE_MODE_CAPTURED, независимо от режима растяжения проекта.
Vector2 screen_velocity = Vector2(0, 0) 🔗
Скорость мыши без масштабирования в пикселях в секунду в экранных координатах. Эта скорость не масштабируется в соответствии с коэффициентом масштабирования содержимого или вызовами InputEvent.xformed_by().
Примечание: В режиме Input.MOUSE_MODE_CAPTURED screen_velocity возвращает (0, 0), поскольку курсор мыши скрыт и заблокирован. Используйте screen_relative для прицеливания мышью в режиме Input.MOUSE_MODE_CAPTURED.
Vector2 tilt = Vector2(0, 0) 🔗
Представляет углы наклона пера. Положительное значение координаты X указывает на наклон вправо. Положительное значение координаты Y указывает на наклон в сторону пользователя. Диапазон от -1.0 до 1.0 для обеих осей.
Vector2 velocity = Vector2(0, 0) 🔗
Скорость мыши в пикселях в секунду.
Примечание: velocity автоматически масштабируется в соответствии с коэффициентом масштабирования содержимого, который определяется настройками режима растяжения проекта. Это означает, что чувствительность мыши может выглядеть по-разному в зависимости от разрешения.
Примечание: В режиме Input.MOUSE_MODE_CAPTURED velocity возвращает (0, 0), поскольку курсор мыши скрыт и заблокирован. Используйте screen_relative для прицеливания мышью в режиме Input.MOUSE_MODE_CAPTURED.