Ich habe ein Fertighaus namens "Straße". Wie kann ich es instanziieren (mit C #), sodass es zunächst an den Koordinaten angezeigt wird (5, 5, 5)
?
7
Wenn Sie das Fertighaus in einem Verzeichnis ablegen, das in Resources
Ihrem Verzeichnis aufgerufen wird Assets
, können Sie die Resources
Klasse und ihre load
Funktionalität verwenden. Dadurch wird ein Fertighaus als geladenGameObject
, das dann instanziiert werden kann.
Zum Beispiel:
GameObject myRoadInstance = Instantiate(Resources.Load("road")) as GameObject;
Erstellt eine Instanz Ihres "Road" -Profils in der Spielwelt.
Sie können entweder die Position festlegen, indem Sie die Transformation ändern, oder Sie können die alternative Version von verwenden Instantiate
, um eine Position anzugeben.
GameObject myRoadInstance =
Instantiate(Resources.Load("road"),
new Vector3(5, 5, 5),
Quaternion.identity) as GameObject;
Das Unity-Handbuch enthält ein Beispiel:
Beachten Sie, dass der Vektor3 als zweiter Parameter und die Quaternion als dritter Parameter übergeben wurden.
quelle
Sie müssen immer wissen, was Sie instanziieren werden, aber von dort aus rufen Sie einfach Instantiate als Funktion auf und laden es in ein neues gameObject. Sie müssen es separat positionieren.
quelle