Input.GetTouch Manual     Reference     Scripting  
Scripting > Runtime Classes > Input
Input.GetTouch

static function GetTouch (index : int) : Touch

Description

Returns object representing status of a specific touch. (Does not allocate temporary variables)

JavaScript
// Moves object according to finger movement on the screen

var speed : float = 0.1;
function Update () {
if (Input.touchCount > 0 &&
Input.GetTouch(0).phase == TouchPhase.Moved) {

// Get movement of the finger since last frame
var touchDeltaPosition:Vector2 = Input.GetTouch(0).deltaPosition;

// Move object across XY plane
transform.Translate (-touchDeltaPosition.x * speed,
-touchDeltaPosition.y * speed, 0);
}
}

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public float speed = 0.1F;
void Update() {
if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Moved) {
Vector2 touchDeltaPosition = Input.GetTouch(0).deltaPosition;
transform.Translate(-touchDeltaPosition.x * speed, -touchDeltaPosition.y * speed, 0);
}
}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

public speed as single = 0.1F

def Update():
if (Input.touchCount > 0) and (Input.GetTouch(0).phase == TouchPhase.Moved):
touchDeltaPosition as Vector2 = Input.GetTouch(0).deltaPosition
transform.Translate(((-touchDeltaPosition.x) * speed), ((-touchDeltaPosition.y) * speed), 0)

Another Example:

JavaScript
// Instantiates a projectile whenever the user taps on the screen

var projectile : GameObject;
function Update () {
for (var i = 0; i < Input.touchCount; ++i) {
if (Input.GetTouch(i).phase == TouchPhase.Began) {
clone = Instantiate (projectile, transform.position, transform.rotation);
}
}
}

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public GameObject projectile;
void Update() {
int i = 0;
while (i < Input.touchCount) {
if (Input.GetTouch(i).phase == TouchPhase.Began)
clone = Instantiate(projectile, transform.position, transform.rotation) as GameObject;

++i;
}
}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

public projectile as GameObject

def Update():
i as int = 0
while i < Input.touchCount:
if Input.GetTouch(i).phase == TouchPhase.Began:
clone = (Instantiate(projectile, transform.position, transform.rotation) as GameObject)
++i

JavaScript
// Shoot a ray whenever the user taps on the screen
var particle : GameObject;
function Update () {
for (var i = 0; i < Input.touchCount; ++i) {
if (Input.GetTouch(i).phase == TouchPhase.Began) {
// Construct a ray from the current touch coordinates
var ray = Camera.main.ScreenPointToRay (Input.GetTouch(i).position);
if (Physics.Raycast (ray)) {
// Create a particle if hit
Instantiate (particle, transform.position, transform.rotation);
}
}
}
}

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public GameObject particle;
void Update() {
int i = 0;
while (i < Input.touchCount) {
if (Input.GetTouch(i).phase == TouchPhase.Began) {
Ray ray = Camera.main.ScreenPointToRay(Input.GetTouch(i).position);
if (Physics.Raycast(ray))
Instantiate(particle, transform.position, transform.rotation) as GameObject;

}
++i;
}
}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

public particle as GameObject

def Update():
i as int = 0
while i < Input.touchCount:
if Input.GetTouch(i).phase == TouchPhase.Began:
ray as Ray = Camera.main.ScreenPointToRay(Input.GetTouch(i).position)
if Physics.Raycast(ray):
(Instantiate(particle, transform.position, transform.rotation) as GameObject)
++i