Fügen Sie Spielobjekt dynamisch zur Szene in Unity3d hinzu
Ich bin erstellen einer Szene, in der ich zeigen will-Liste bietet. Um zu zeigen, dass das Angebot erstellte ich ein prefab mit Platzhaltern für die Angebots-details, die ich erhalten während der Laufzeit. Ich erstellt einen Platzhalter in der Szene, fügen Sie den prefab in die Szene, aber es zeigt nicht auf die Benutzeroberfläche.
OfferHolderClass:
using UnityEngine;
using System.Collections;
public class OfferHolder : MonoBehaviour {
public GameObject localOffer;
//Use this for initialization
void Start () {
GameObject offer = Instantiate(localOffer) as GameObject;
offer.GetComponent<Offer>().Text = "Testing";
offer.transform.parent = this.transform;
}
//Update is called once per frame
void Update () {
}
}
Ich bin neu in Unity und bin mir nicht sicher, was ich hier vermisst.
Kommentar zu dem Problem
Haben Sie Sie sicher, dass Sie instanziieren das prefab an die richtige Stelle? versuchen Sie, die Koordinaten manuell ein.
Was @Botz3000 sagte. Beim Aufruf Instanziiert w/o-position oder Ausrichtung Argumente, die diese Werte stammen aus Ihrer Fertighaus ist Standard.
Welche Koordinaten kann ich geben?
Sie können fügen Sie ein
Debug.Pause ()
- Anweisung am Ende des Start ()
und schauen dann, ob so etwas wie Angebot (Klon)
zeigt sich in der Hierarchie-Ansicht. Hast du eigentlich per drag-and-drop das prefab auf die Skript-variable im Inspector die Registerkarte?
InformationsquelleAutor der Frage Ashwani K | 2013-03-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Unten verursachen GameObject mit den Objekten Eigenen Verwandeln Einstellungen.
Unten verursachen GameObject mit den Objekten Eltern Verwandeln Einstellungen.
Nicht sicher, ob das hilft, aber viel Glück auf deinem Spiel 🙂
InformationsquelleAutor der Antwort UnityFan2013
In der Einheit, Sie können es so machen.
Siehe auch : http://docs.unity3d.com/Documentation/ScriptReference/Object.Instantiate.html
Besonders für Position, muss es vor der Kamera, oder Sie können es nicht sehen.
Was mehr ist, schlage ich vor, Sie nehmen einen Blick auf NGUI. Es ist ein leistungsfähiges GUI-system mit einige nützliche API für die Entwicklung. BTW ich kann mir nicht vorstellen, wie schwer es ist, Spiele zu entwickeln, ohne so etwas, so müssen Sie möglicherweise, dass es früher oder später ;\
Mit es, Sie können so leicht tun.
UPDATE:
Wenn ich dies beantwortet, NGUI ist die NUR nutzbare gui-system, so dass ich empfohlen. Es gibt jedoch einen offiziellen Unity-UI-system(AKA uGUI) gibt, die Sie nicht wirklich verwenden, NGUI, lassen Sie allein die gui Krieg ist noch im Gange.
Was mehr ist, möchten Sie vielleicht zu nehmen, nahm in pool-system. Es ist verwendet, um zu behandeln massive gameobjects wie Kugeln, Würfel etc. Wenn Sie Hunderte von spezifischen gameobject in die Szene und leiden instanziieren, dann müssen Sie wahrscheinlich einen pool. Ich persönlich habe versucht, FastPool und es funktioniert gut, eigentlich sind alle Vermögenswerte, von seiner Art der Arbeit genau das gleiche.
InformationsquelleAutor der Antwort zhuchun