Jump to content
Unity Insider Forum

Iso Cammera.


Markus

Recommended Posts

Hy Leute. 

Ich möchte in meinem game eine Iso Cammera Integrieren (wird ne art diablo clon).

Was ich brauche weis ich: 

1. Meine x und y position als variable die ich vom Playercode an das Cammerer script übergebe.

2. Eine zuweisung. z.b.

cammera.x = player.x;

 

Problem: Ich bin neu in unity und c# weis nicht wie man variablen von einem script an das andere übergibt und mit vectoren arbeitet.

Auserdem sol die Cammera natürlich im forher festgelegten Apstand den Player verfolgen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 weeks later...

Ich denke du brauchst dann eher die X und Z Koordinaten und die Y Achse ist dann der Abstand von der Kamera zum Spieler. Es sei denn es ist in 2d aufgebaut.

Aber ist ja im Prinzip egal welche Werte du verwendest.

Du musst hier nichts gross Variablen aus deinem Playerscript an das Kamerascript senden. Du kannst ein kleines Skript erstellen und einmalig den Player als Referenz einfügen, das reicht dann auch schon.

z.B.:

using UnityEngine;
using System.Collections;

public class CameraController : MonoBehaviour {

public Transform player;
public float distance = 5f; 


    void LateUpdate () 
    {
        
        transform.position = new Vector3(player.position.x, distance, player.position.z);
    }

}

Kannst dann einfach dieses Skript bei der Kamera einfügen. Im Inspektor ziehst du dann den Player in das Feld player und bei distance kannst du den abstand einstellen.

 

Die Kamera selbst stellst du über den Inspektor und deren Rotation einmalig auf isometrische Ansicht ein.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich würde es so machen:

using UnityEngine;
using System.Collections;

public class CameraController : MonoBehaviour
{

public Transform player;
public float speed = 5.0F;
public Vector3 offset = new Vector3(0, 5, 0);


    void Update () 
    {
        
        transform.position = Vector3.Lerp(transform.position, player.transform.position, speed * Time.deltaTime) + offset;
    }

}

Jetzt das Script auf die Kamera legen und den Player auf den Slot ziehen. Jetzt verfolgt die Kamera den Player in einer flüssigen Bewegung.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 21 Stunden schrieb Hermetes:

Markus, die Camera Programmierung ist eines der schwierigsten Dinge in Unity. Da solltest du zuerst an andere Dinge ran.

Da würde ich nicht zustimmen wollen. Es ist sogar ein ganz hervorragendes Thema, um sich mit einigen wichtigen Grundkonzepten für vernünftige Architektur in Unity auseinanderzusetzen.

Hier gibt's dazu etwas zum Lesen: http://blog.13pixels.de/2019/creating-a-camera-setup-in-unity/

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...