/Godot 3.2


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.


String action ""
BitMap bitmask
Texture normal
bool passby_press false
Texture pressed
Shape2D shape
bool shape_centered true
bool shape_visible true
VisibilityMode visibility_mode 0


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

String action

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

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

BitMap bitmask

Setter set_bitmask(value)
Getter get_bitmask()

The button's bitmask.

Texture normal

Setter set_texture(value)
Getter get_texture()

The button's texture for the normal state.

bool passby_press

Default false
Setter set_passby_press(value)
Getter is_passby_press_enabled()

If true, pass-by presses are enabled.

Texture pressed

Setter set_texture_pressed(value)
Getter get_texture_pressed()

The button's texture for the pressed state.

Shape2D shape

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.

VisibilityMode visibility_mode

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.

© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.