Version: 2019.3
  • C#


Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.



public static bool GetButtonDown(string buttonName);


Returns true during the frame the user pressed down the virtual button identified by buttonName.

You need to call this function from the Update function, since the state gets reset each frame. It will not return true until the user has released the key and pressed it again.

Use this only when implementing action like events IE: shooting a weapon.
Use Input.GetAxis for any kind of movement behaviour.

To edit, set up, or remove buttons and their names (such as "Fire1"): 1. Go to Edit > Project Settings > Input to bring up the Input Manager. 2. Expand Axis by clicking the arrow next to it. This shows the list of the current buttons you have. You can use one of these as the parameter "buttonName". 3. Expand one of the items in the list to access and change aspects such as the button's name and the key, joystick or mouse movement that triggers it. 4. For more information about buttons, see the Input Manager page.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public GameObject projectile; void Update() { if (Input.GetButtonDown("Fire1")) Instantiate(projectile, transform.position, transform.rotation); } }