Kann man in Unity ein Transform in einem Prefab speichern?
Hi ich bin neu in Unity und möchte ein Transform Objekt in einem Prefab speichern und dann auf der Map spawnen.
Aber wie geht das?
weil man kann ja nicht das Objekt in den Prefab ziehen.
3 Antworten
Das geht an der Stelle nicht, nein. Die Objekte in deiner Szene und deine Prefabs existieren auf verschiedenen "Ebenen". In deiner Szene, das sind instantiierte Objekte, wohingegen deine Prefabs serialisierte Objekte sind, die instantiiert werden können.
Um dein Problem zu lösen, könntest du beispielsweise einen sogenannten Provider erstellen, der zur Laufzeit den Transform des Objekts bereitstellt, welchen deine Objekte verfolgen sollen.
Schau dir auch beispielsweise mal How can you get a reference to the player after it is spawned an, auch wenn der Beitrag schon etwas älter ist. Dort wird GameObject.tag benutzt, was dir erlaubt, den Spieler zu finden. Das wäre eine Möglichkeit, wenn auch keine effiziente Lösung. Die Performance kannst du später aber immer noch verbessern, sobald du etwas hast, was spielbar ist.
Ich möchte dass der navmesh einem Target hinterher läuft und immer wieder gespawnt wird
Korrekt. Ein Transform ist eine Komponente eines GameObject welche unter anderem Position, Rotation und Scale beinhaltet.
Das Bedeutet du kannst ein Transform nur instantiieren, wenn ein GameObject vorhanden ist.
Hier stellt sich also erstmal die Frage, was willst du tun? Was soll den das Tranform können?
Ich möchte dass der navmesh einem Target hinterher läuft und immer wieder gespawnt wird