Documentation
¶
Overview ¶
Stores information about a mouse or a pen motion. This includes relative position, absolute position, and velocity. See Node.Input.
Note: By default, this event is only emitted once per frame rendered at most. If you need more precise input reporting, set Input.UseAccumulatedInput to false to make events emitted as often as possible. If you use InputEventMouseMotion to draw lines, consider using Geometry2D.BresenhamLine as well to avoid visible gaps in lines if the user is moving the mouse quickly.
Note: This event may be emitted even when the mouse hasn't moved, either by the operating system or by Godot itself. If you really need to know if the mouse has moved (e.g. to suppress displaying a tooltip), you should check that relative.is_zero_approx() is false.
Index ¶
- type Advanced
- type Any
- type Extension
- func (self *Extension[T]) AsInputEvent() InputEvent.Instance
- func (self *Extension[T]) AsInputEventFromWindow() InputEventFromWindow.Instance
- func (self *Extension[T]) AsInputEventMouse() InputEventMouse.Instance
- func (self *Extension[T]) AsInputEventMouseMotion() Instance
- func (self *Extension[T]) AsInputEventWithModifiers() InputEventWithModifiers.Instance
- func (self *Extension[T]) AsObject() [1]gd.Object
- func (self *Extension[T]) AsRefCounted() [1]gd.RefCounted
- func (self *Extension[T]) AsResource() Resource.Instance
- type ID
- type Instance
- func (self Instance) AsInputEvent() InputEvent.Instance
- func (self Instance) AsInputEventFromWindow() InputEventFromWindow.Instance
- func (self Instance) AsInputEventMouse() InputEventMouse.Instance
- func (self Instance) AsInputEventMouseMotion() Instance
- func (self Instance) AsInputEventWithModifiers() InputEventWithModifiers.Instance
- func (self Instance) AsObject() [1]gd.Object
- func (self Instance) AsRefCounted() [1]gd.RefCounted
- func (self Instance) AsResource() Resource.Instance
- func (self Instance) ID() ID
- func (self Instance) PenInverted() bool
- func (self Instance) Pressure() Float.X
- func (self Instance) Relative() Vector2.XY
- func (self Instance) ScreenRelative() Vector2.XY
- func (self Instance) ScreenVelocity() Vector2.XY
- func (self *Instance) SetObject(obj [1]gd.Object) bool
- func (self Instance) SetPenInverted(value bool)
- func (self Instance) SetPressure(value Float.X)
- func (self Instance) SetRelative(value Vector2.XY)
- func (self Instance) SetScreenRelative(value Vector2.XY)
- func (self Instance) SetScreenVelocity(value Vector2.XY)
- func (self Instance) SetTilt(value Vector2.XY)
- func (self Instance) SetVelocity(value Vector2.XY)
- func (self Instance) Tilt() Vector2.XY
- func (self Instance) Velocity() Vector2.XY
- func (self Instance) Virtual(name string) reflect.Value
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Advanced ¶
type Advanced = class
Advanced exposes a 1:1 low-level instance of the class, undocumented, for those who know what they are doing.
type Extension ¶
Extension can be embedded in a new struct to create an extension of this class. T should be the type that is embedding this Extension
func (*Extension[T]) AsInputEvent ¶
func (self *Extension[T]) AsInputEvent() InputEvent.Instance
func (*Extension[T]) AsInputEventFromWindow ¶
func (self *Extension[T]) AsInputEventFromWindow() InputEventFromWindow.Instance
func (*Extension[T]) AsInputEventMouse ¶
func (self *Extension[T]) AsInputEventMouse() InputEventMouse.Instance
func (*Extension[T]) AsInputEventMouseMotion ¶
func (*Extension[T]) AsInputEventWithModifiers ¶
func (self *Extension[T]) AsInputEventWithModifiers() InputEventWithModifiers.Instance
func (*Extension[T]) AsRefCounted ¶
func (self *Extension[T]) AsRefCounted() [1]gd.RefCounted
func (*Extension[T]) AsResource ¶
type ID ¶
ID is a typed object ID (reference) to an instance of this class, use it to store references to objects with unknown lifetimes, as an ID will not panic on use if the underlying object has been destroyed.
type Instance ¶
type Instance [1]gdclass.InputEventMouseMotion
Instance of the class with convieniently typed arguments and results.
var Nil Instance
Nil is a nil/null instance of the class. Equivalent to the zero value.
func (Instance) AsInputEvent ¶
func (self Instance) AsInputEvent() InputEvent.Instance
func (Instance) AsInputEventFromWindow ¶
func (self Instance) AsInputEventFromWindow() InputEventFromWindow.Instance
func (Instance) AsInputEventMouse ¶
func (self Instance) AsInputEventMouse() InputEventMouse.Instance
func (Instance) AsInputEventMouseMotion ¶
func (Instance) AsInputEventWithModifiers ¶
func (self Instance) AsInputEventWithModifiers() InputEventWithModifiers.Instance
func (Instance) AsRefCounted ¶
func (self Instance) AsRefCounted() [1]gd.RefCounted
func (Instance) AsResource ¶
func (Instance) PenInverted ¶
Returns true when using the eraser end of a stylus pen.
Note: This property is implemented on Linux, macOS and Windows.
func (Instance) Pressure ¶
Represents the pressure the user puts on the pen. Ranges from 0.0 to 1.0.
func (Instance) Relative ¶
The mouse position relative to the previous position (position at the last frame).
Note: Since InputEventMouseMotion may only be emitted when the mouse moves, it is not possible to reliably detect when the mouse has stopped moving by checking this property. A separate, short timer may be necessary.
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 [Input.MouseModeCaptured] mouse mode. To avoid this, use ScreenRelative instead.
func (Instance) 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 may only be emitted when the mouse moves, it is not possible to reliably detect when the mouse has stopped moving by checking this property. A separate, short timer may be necessary.
Note: This coordinate is not scaled according to the content scale factor or calls to InputEvent.XformedBy. This should be preferred over Relative for mouse aiming when using the [Input.MouseModeCaptured] mouse mode, regardless of the project's stretch mode.
func (Instance) 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 InputEvent.XformedBy.
Note: Use ScreenRelative for mouse aiming using the [Input.MouseModeCaptured] mouse mode.
func (Instance) SetPenInverted ¶
SetPenInverted sets the property returned by [GetPenInverted].
func (Instance) SetPressure ¶
SetPressure sets the property returned by [GetPressure].
func (Instance) SetRelative ¶
SetRelative sets the property returned by [GetRelative].
func (Instance) SetScreenRelative ¶
SetScreenRelative sets the property returned by [GetScreenRelative].
func (Instance) SetScreenVelocity ¶
SetScreenVelocity sets the property returned by [GetScreenVelocity].
func (Instance) SetVelocity ¶
SetVelocity sets the property returned by [GetVelocity].
func (Instance) 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.
func (Instance) 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. That means mouse sensitivity may appear different depending on resolution.
Note: Use ScreenRelative for mouse aiming using the [Input.MouseModeCaptured] mouse mode.