2017-12-22 14 views
0

Ich möchte, dass, sobald ich auf D klicke, es den Droid zeigen wird und auch wenn ich die Kamera (Transform) bewege, wird der Droide der Kamera folgen.Wie kann ich Input.GetKeyDown in Einheit umschalten?

Und wenn ich noch einmal auf D klicke, setze den Droiden aktiv auf false, so dass ich jedes Mal, wenn ich D drücke, zwischen SetActive false und true umschalten werde.

+1

droid.SetActive (! Droid.active); – Greg

Antwort

1

Zum Umschalten eines Objekts sollten Sie so etwas verwenden. PSEUDO

if (Input.GetKeyDown(KeyCode.D)) 
     { 

      droid.enabled = !droid.enabled; 
     } 

Dies ermöglicht Ihnen, Ihre Gameobject jedes Mal, wenn Sie die Taste D.

In KeyDown-

droid.transform.position = droid.transform.position - transform.forward; 

Dies funktioniert nur einmal kurz drücken (Ein Frame). Sie können also ein bool verwenden oder überprüfen, ob Ihr gameObject aktiv ist, um Ihrer Kamera zu folgen. In Update können Sie die folgenden

if (droid.activeInHierarchy == true) // or you can use a bool here 
     { 
      droid.transform.position = droid.transform.position - transform.forward; 

     } 

Hope dies hilft. Prost!

+0

Wenn ich mache droid.transform.position = droid.transform.position - transform.forward; und dann D mehrmals drücken, wenn der Droide wieder aktiv ist, nähert sich der Droide dem Spieler immer näher. Und ich möchte in der gleichen ursprünglichen Distanz bleiben. Und der Droide folgt nicht der Kamerabewegung. Ich habe vergessen zu erwähnen, dass transform FirstPersonCharacter ist und wenn ich mich um die Kamera bewege, die an den FirstPersonCharacter angehängt ist, möchte ich, dass der Droide der Kamerabewegung folgt. –

+0

Es sieht so aus, als würden Sie den Droiden nur in das Gegenteil der Richtung Ihres FirstPersonCharacters bewegen (transform.forward). Um ihn in die Kameraposition zu bewegen, musst du dich entlang des Vektors vom Droiden zur Kamera bewegen (droid.transform.position - transform.position). Schau dir übrigens die [Navigation] von Unity an (https: // unity3d.com/de/learn/tutorials/topics/navigation/navigation-overview?playlist=17105), könnte es Ihre Bedürfnisse bereits decken. – Lelefant

Verwandte Themen