Class InputEventMouseMotion
- Namespace
- Godot
- Assembly
- GodotSharp.dll
Stores information about a mouse or a pen motion. This includes relative position, absolute position, and velocity. See _Input(InputEvent).
Note: By default, this event is only emitted once per frame rendered at most. If you need more precise input reporting, set UseAccumulatedInput to false to make events emitted as often as possible. If you use InputEventMouseMotion to draw lines, consider implementing Bresenham's line algorithm as well to avoid visible gaps in lines if the user is moving the mouse quickly.
public class InputEventMouseMotion : InputEventMouse, IDisposable
- Inheritance
-
InputEventMouseMotion
- Implements
- Inherited Members
Constructors
InputEventMouseMotion()
public InputEventMouseMotion()
Properties
PenInverted
Returns true when using the eraser end of a stylus pen.
Note: This property is implemented on Linux, macOS and Windows.
public bool PenInverted { get; set; }
Property Value
Pressure
Represents the pressure the user puts on the pen. Ranges from 0.0
to 1.0
.
public float Pressure { get; set; }
Property Value
Relative
The mouse position relative to the previous position (position at the last frame).
Note: Since InputEventMouseMotion is only emitted when the mouse moves, the last event won't have a relative position of Vector2(0, 0)
when the user stops moving the mouse.
Note: Relative is automatically scaled according to the content scale factor, which is defined by the project's stretch mode settings. This means mouse sensitivity will appear different depending on resolution when using Relative in a script that handles mouse aiming with the Captured mouse mode. To avoid this, use ScreenRelative instead.
public Vector2 Relative { get; set; }
Property Value
ScreenRelative
The unscaled mouse position relative to the previous position in the coordinate system of the screen (position at the last frame).
Note: Since InputEventMouseMotion is only emitted when the mouse moves, the last event won't have a relative position of Vector2(0, 0)
when the user stops moving the mouse. This coordinate is not scaled according to the content scale factor or calls to XformedBy(Transform2D, Vector2?). This should be preferred over Relative for mouse aiming when using the Captured mouse mode, regardless of the project's stretch mode.
public Vector2 ScreenRelative { get; set; }
Property Value
ScreenVelocity
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 XformedBy(Transform2D, Vector2?). This should be preferred over Velocity for mouse aiming when using the Captured mouse mode, regardless of the project's stretch mode.
public Vector2 ScreenVelocity { get; set; }
Property Value
Tilt
Represents the angles of tilt of the pen. Positive X-coordinate value indicates a tilt to the right. Positive Y-coordinate value indicates a tilt toward the user. Ranges from -1.0
to 1.0
for both axes.
public Vector2 Tilt { get; set; }
Property Value
Velocity
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. This means mouse sensitivity will appear different depending on resolution when using Velocity in a script that handles mouse aiming with the Captured mouse mode. To avoid this, use ScreenVelocity instead.
public Vector2 Velocity { get; set; }
Property Value
Methods
HasGodotClassMethod(in godot_string_name)
Check if the type contains a method with the given name. This method is used by Godot to check if a method exists before invoking it. Do not call or override this method.
protected override bool HasGodotClassMethod(in godot_string_name method)
Parameters
method
godot_string_nameName of the method to check for.
Returns
HasGodotClassSignal(in godot_string_name)
Check if the type contains a signal with the given name. This method is used by Godot to check if a signal exists before raising it. Do not call or override this method.
protected override bool HasGodotClassSignal(in godot_string_name signal)
Parameters
signal
godot_string_nameName of the signal to check for.
Returns
InvokeGodotClassMethod(in godot_string_name, NativeVariantPtrArgs, out godot_variant)
Invokes the method with the given name, using the given arguments. This method is used by Godot to invoke methods from the engine side. Do not call or override this method.
protected override bool InvokeGodotClassMethod(in godot_string_name method, NativeVariantPtrArgs args, out godot_variant ret)
Parameters
method
godot_string_nameName of the method to invoke.
args
NativeVariantPtrArgsArguments to use with the invoked method.
ret
godot_variantValue returned by the invoked method.