2016-03-22 11 views
3

ich ein Spiel bezweckt Bolt mit zum Beispiel white Textur mit dem Namen, wenn ich die und umbenennen Duplikat in EnemyBolt und ändere Textur orange die Bolt Textur verwandelt sich in orange zu duplizieren, wie kann ich ein GameObject kopieren oder duplizieren, das seine Referenz nicht ändert?Unity ein Gameobject in der rechten Weise duplizieren 5

+0

Haben Sie versucht, Material zu duplizieren, das in Bolt-Gameobject verwendet wird? Setzen Sie eine andere Farbe auf das duplizierte Material und weisen Sie es Ihrem EnemyBolt zu und es sollte gut funktionieren – LapisLazuli

Antwort

2

Wenn Sie ein GameObject duplizieren, duplizieren Sie auch alle damit verbundenen Komponenten. Auf diese Weise erhält das neue Objekt einen eigenen Satz von Komponenteninstanzen. Dies ist im Hierarchie-Panel, das den Inhalt der Szene darstellt.

Das Projektfenster stellt die Assets dar, die in den verschiedenen Szenen verwendet werden. Wenn Sie ein Material auf einen Renderer ziehen, verweist diese Rendererinstanz auf ein Material, das zur Laufzeit instanziiert wird.

Um den Renderprozess zu optimieren, wird, wenn ein Material unter vielen Objekten geteilt wird, nur ein Material erstellt, wodurch Zeichenaufrufe reduziert werden.

Jetzt für Ihre Lösung müssen Sie Ihr Material duplizieren und das neue dem neuen Objekt zuweisen. Wenn Sie es nun auf der einen Seite ändern, beeinflusst es die andere nicht, da sie anderes Material verwenden. Auf der anderen Seite hast du den Draw Call erhöht.

Verwandte Themen