In Unity auf Knopfdruck Kamera Wechseln?

3 Antworten

Ja das geht. Und zwar brauchst du ein Script mit 2 öffentlichen Variablen des Typs Camera:

public Camera kamera1;
public Camera kamera2;

Eine der Kameras muss dann natürlich enabled sein (haken in der kleinen Box oben bei der Kamera) die andere disabled.

Im Inspector in Unity fügst du dann beide Kameras in deiner Scene an die entsprechende Stelle ein. (Per drag and drop) Natürlich brauchst du vorher ein GameObject das das Script enthält.

In der Update Methode des Scripts legst du die Bedingung fest wann die Kameras gewechselt werden sollen.
Z.B:

if (Input.getKey(KeyCode.S)) {}

In die geschweiften Klammern schreibst du dann:

kamera1.enabled = !kamera1.enabled;
kamera2.enabled = !kamera2.enabled;

Hoffe ich konnte dir damit ein wenig helfen :D

Was meinst du mit "gehen"?

Du könntest die Position der jetzige Kamere mit Vector3.Lerp zur anderen führen. Die Rotation ebenso.

Du benötigst zwei Camera Objekte, für jede Ansicht eine.

Ich vermute, dass du mit "Knopf" eine Taste auf der Tastatur meinst, schau dir da mal das hier an: https://docs.unity3d.com/ScriptReference/Input.GetKeyDown.html Im Grunde schreibst du ein Skript mit Update() und in dieser Update() überprüfst du, ob die Taste gedrückt wurde. In dem LInk findest du auch verständliche Beispiele dazu.

das man dann zu einer anderen Kamera geht

Einfach ist es, wenn du einfach die Kamera wechselst. Da findest du ein Beispiel hier: http://answers.unity3d.com/questions/1329439/switch-between-cameras-in-c.html In dem Beispiel ist auch der Input, also die Taste, die du drückst, mit dabei.

Flüssige Animationen sind sehr viel schwerer und in vielen Fällen auch eher nicht empfehlenswert.