2017-08-29 1 views
0

Je veux imprimer held quand je touche seulement les gameObjectComment imprimer en touchant uniquement gameobject?

public GameObject Gameobject; 
void Update() { 
     if (Input.GetButton("Fire1")) 
     { 
      print("held"); 
     } 
    } 

Donc, ce code imprime held quand je touche même en dehors du gameobject .Je a ajouté le script à la gameobject .La réponse doit travailler sur Android aussi.

+1

@Programmer J'ai essayé la méthode 'OnDrag' de votre réponse en double. Et cela fonctionne parfaitement :) –

+0

[Comment ouvrir le clavier sur Android dans UNITY?] (Https://stackoverflow.com/questions/46501514/how-to-open-keyboard-on-android-in-unity) –

Répondre

0

Il est événement appelé OnMouseOver()

void OnMouseOver() 
{ 
    if (Input.GetAxis("Fire1")) 
     { 
      print("held"); 
     } 
} 

pour Android est différent, vous avez ici un lien:

http://answers.unity3d.com/questions/610440/on-touch-event-on-game-object-on-android-2d.html

Ils expliquent comment obtenir la position du toucher et tirer un rayon pour savoir si cela a un impact sur votre objet.

+0

Merci pense avoir compris. –

+0

'Input.GetButton' dans' OnMouseOver'? Pas bon. 1.Utilisez EventSystem ou raycast. Cela permettra d'éviter de nombreux problèmes tels que les clics via l'interface utilisateur. – Programmer

+0

Vous avez raison, je l'ai corrigé. – NorbyAriel