Jump to content
Unity Insider Forum

Zugriff über Network Script auf Non-Network Objecte(Camera)


MustafGames

Recommended Posts

Hallo,

 

ich bin nun an folgenden Problem angestoßen, wenn ich in meinen Steuerungsscript die Camera setze:

 

   void Update() {
    if (!isLocalPlayer)
    {
	    return;
    }
    GameObject cam = GameObject.Find("_CAMERA");
    cam.GetComponent<CameraController>().target = transform;

 

Dann setzt es sie nur für den Spieler der gerade über den Editor spielt.

 

Ich möchte ja das jeder seine eigene Kamera hat, diese soll aber kein child Object sein.

Jedes mal wenn ich dann unterhalb des Codes auf die Kamera zugreifen will, kommt der Error das die Kamera nicht gesetzt wurde. (Obwohl das Kameraobjekt den Namen hat) Im Inspector ist im Script auch dann keine Kamera eingetragen, aber warum?

 

mfg Markus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich würde es anders machen. Wenn es nur darum geht, dass für jeden Spieler nur seine Eigene Kamera an ist, dann würde ich die Kamera als globale Variable an das Steuerungsskript hinzufügen und im Inspector voher zuweisen. Bei Start() einfach abfragen ob isLocalPlayer geben ist und dann bei der camera enabled auf true setzen ansonsten auf false.

 

Abgsehen davon ist es ziemlich Rechenaufwendig in Jedem Frame bei Update() GameObject.Find() aufzurufen.

Also ich versuche Find() immer zu meiden weil man es meist immer anders Lösen kann

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich würde es anders machen. Wenn es nur darum geht, dass für jeden Spieler nur seine Eigene Kamera an ist, dann würde ich die Kamera als globale Variable an das Steuerungsskript hinzufügen und im Inspector voher zuweisen. Bei Start() einfach abfragen ob isLocalPlayer geben ist und dann bei der camera enabled auf true setzen ansonsten auf false.

 

Abgsehen davon ist es ziemlich Rechenaufwendig in Jedem Frame bei Update() GameObject.Find() aufzurufen.

Also ich versuche Find() immer zu meiden weil man es meist immer anders Lösen kann

 

Funktioniert nicht, den dann kommt die Variable Cam wurde nicht gesetzt..

 

Grund: Der Player ist ein Prefab wo ich kein Scene Objekte als Variablen setzen kann, außerdem soll die Kamera sowie das 2D Interface (wo das selbe Problem ist) keine Child-Objekte des Player-Prefabs sein.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

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

×
×
  • Neu erstellen...