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.

InputEventMouseMotion

Eredita: InputEventMouse < InputEventWithModifiers < InputEventFromWindow < InputEvent < Resource < RefCounted < Object

Rappresenta movimento del mouse o di penna.

Descrizione

Memorizza informazioni sul movimento di un mouse o di una penna. Ciò include posizione relativa, posizione assoluta e velocità. Vedi Node._input().

Nota: Per impostazione predefinita, questo evento è emesso solo una volta per frame renderizzato al massimo. Se hai bisogno di individuare gli input più precisamente, imposta Input.use_accumulated_input su false per assicurare che gli eventi siano emessi il più spesso possibile. Se utilizzi InputEventMouseMotion per disegnare linee, considera anche di implementare l'algoritmo della linea di Bresenham per evitare spazi vuoti visibili nelle linee se l'utente muove rapidamente il mouse.

Nota: Questo evento potrebbe essere emesso anche quando il mouse non si è mosso, sia dal sistema operativo sia da Godot stesso. Se è davvero necessario sapere se il mouse si è mosso (ad esempio per sopprimere la visualizzazione di un tooltip), dovresti controllare che relative.is_zero_approx() sia false.

Tutorial

Proprietà

bool

pen_inverted

false

float

pressure

0.0

Vector2

relative

Vector2(0, 0)

Vector2

screen_relative

Vector2(0, 0)

Vector2

screen_velocity

Vector2(0, 0)

Vector2

tilt

Vector2(0, 0)

Vector2

velocity

Vector2(0, 0)


Descrizioni delle proprietà

bool pen_inverted = false 🔗

  • void set_pen_inverted(value: bool)

  • bool get_pen_inverted()

Restituisce true quando è in utilizzo la gomma di una penna stilo.

Nota: Questa proprietà è implementata su Linux, macOS e Windows.


float pressure = 0.0 🔗

  • void set_pressure(value: float)

  • float get_pressure()

Rappresenta la pressione che l'utente esercita sulla penna. Varia da 0.0 a 1.0.


Vector2 relative = Vector2(0, 0) 🔗

La posizione del mouse relativa alla posizione precedente (posizione all'ultimo frame).

Nota: Poiché InputEventMouseMotion potrebbe essere emesso solo quando il mouse si muove, non è possibile rilevare affidabilmente quando il mouse ha smesso di muoversi verificando questa proprietà. Potrebbe essere necessario un timer separato di poca durata.

Nota: relative è ridimensionato automaticamente in base al fattore di scala del contenuto, definito dalle impostazioni della modalità di allargamento del progetto. Ciò significa che la sensibilità del mouse apparirà diversa a seconda della risoluzione quando si utilizza relative in uno script che gestisce la mira del mouse con la modalità del mouse Input.MOUSE_MODE_CAPTURED. Per evitare ciò, utilizza invece screen_relative.


Vector2 screen_relative = Vector2(0, 0) 🔗

  • void set_screen_relative(value: Vector2)

  • Vector2 get_screen_relative()

Posizione del mouse non ridimensionata rispetto alla posizione precedente nel sistema di coordinate dello schermo (posizione all'ultimo frame).

Nota: Poiché InputEventMouseMotion potrebbe essere emesso solo quando il mouse si muove, non è possibile rilevare affidabilmente quando il mouse ha smesso di muoversi verificando questa proprietà. Potrebbe essere necessario un timer separato di poca durata.

Nota: Queste coordinate non sono ridimensionate in base al fattore di scala del contenuto o alle chiamate a InputEvent.xformed_by(). Questo dovrebbe essere preferito a relative per la mira del mouse quando si utilizza la modalità del mouse Input.MOUSE_MODE_CAPTURED, a prescindere dalla modalità di allargamento del progetto.


Vector2 screen_velocity = Vector2(0, 0) 🔗

  • void set_screen_velocity(value: Vector2)

  • Vector2 get_screen_velocity()

The unscaled mouse velocity in pixels per second in screen coordinates. This velocity is not scaled according to the content scale factor or calls to InputEvent.xformed_by().

Note: In Input.MOUSE_MODE_CAPTURED mode, screen_velocity returns (0, 0) because the mouse cursor is hidden and locked. Use screen_relative for mouse aiming using the Input.MOUSE_MODE_CAPTURED mouse mode.


Vector2 tilt = Vector2(0, 0) 🔗

Rappresenta gli angoli di inclinazione della penna. Il valore positivo della coordinata X indica un'inclinazione verso destra. Il valore positivo della coordinata Y indica un'inclinazione verso l'utente. Varia da -1.0 a 1.0 per entrambi gli assi.


Vector2 velocity = Vector2(0, 0) 🔗

The mouse velocity in pixels per second.

Note: velocity is automatically scaled according to the content scale factor, which is defined by the project's stretch mode settings. That means mouse sensitivity may appear different depending on resolution.

Note: In Input.MOUSE_MODE_CAPTURED mode, velocity returns (0, 0) because the mouse cursor is hidden and locked. Use screen_relative for mouse aiming using the Input.MOUSE_MODE_CAPTURED mouse mode.