Inherits: Node2D < CanvasItem < Node < Object

Button for touch screen devices for gameplay use.


TouchScreenButton allows you to create on-screen buttons for touch devices. It's intended for gameplay use, such as a unit you have to touch to move.

This node inherits from Node2D. Unlike with Control nodes, you cannot set anchors on it. If you want to create menus or user interfaces, you may want to use Button nodes instead. To make button nodes react to touch events, you can enable the Emulate Mouse option in the Project Settings.

You can configure TouchScreenButton to be visible only on touch devices, helping you develop your game both for desktop and mobile devices.


bool is_pressed ( ) const


  • pressed ( )

Emitted when the button is pressed (down).

  • released ( )

Emitted when the button is released (up).


enum VisibilityMode:

  • VISIBILITY_ALWAYS = 0 --- Always visible.
  • VISIBILITY_TOUCHSCREEN_ONLY = 1 --- Visible on touch screens only.

Property Descriptions

Default ""
Setter set_action(value)
Getter get_action()

The button's action. Actions can be handled with InputEventAction.

Setter set_bitmask(value)
Getter get_bitmask()

The button's bitmask.

Setter set_texture(value)
Getter get_texture()

The button's texture for the normal state.

Default false
Setter set_passby_press(value)
Getter is_passby_press_enabled()

If true, pass-by presses are enabled.

Setter set_texture_pressed(value)
Getter get_texture_pressed()

The button's texture for the pressed state.

Setter set_shape(value)
Getter get_shape()

The button's shape.

  • bool shape_centered
Default true
Setter set_shape_centered(value)
Getter is_shape_centered()

If true, the button's shape is centered in the provided texture. If no texture is used, this property has no effect.

  • bool shape_visible
Default true
Setter set_shape_visible(value)
Getter is_shape_visible()

If true, the button's shape is visible.

Default 0
Setter set_visibility_mode(value)
Getter get_visibility_mode()

The button's visibility mode. See VisibilityMode for possible values.

Method Descriptions

  • bool is_pressed ( ) const

Returns true if this button is currently pressed.