Einheit C# Instanziierung von prefab und casting auf GameObject

In Unity mit C#, ich bin zu Instanziieren versucht, von einem Fertighaus, und weisen Sie ein Skript, um das neue Objekt. Um dies zu tun, ich glaube, die brauche ich, um das neue Objekt geworfen als GameObject. Doch die Rückkehr-Typ Instanziieren ist UnityEngine.Objekt

Aus der Einheit Handbuch:

public GameObject wreck;
...
void KillSelf () (
...
GameObject wreckClone = (GameObject) Instantiate(wreck, transform.position, transform.rotation);

Diese jedoch, führt zu einer InvalidCastException. Ich habe gesehen, erwähnt auf diesem forum versuchen, diese stattdessen:

UnityEngine.Object uo = Instantiate(...
GameObject go = (GameObject)go;

Diese, jedoch, die Ergebnisse in der gleichen Ausnahme.

Habe ich einige Beiträge suggerieren versucht zu casten mit:

...Instantiate(...) as GameObject;

Diese syntax wird jedoch nicht erscheinen, unterstützt durch den compiler.

Dies ist ziemlich verwirrend. Ich bin das kopieren von kleinen bits des Codes aus dem (vermutlich korrekten) Handbücher und stack overflow Antworten, und Sie nur scheinen nicht zu funktionieren.

Ich bin mir nicht sicher, was für Informationen wären notwendig, um dieses Rätsel lösen, so Fragen Sie mich einfach was Sie brauchen.

Bisher habe ich versucht, beim einloggen das Objekt instanziiert werden, bevor Sie versuchen zu casten. Es zeigt sich, wie ThrownFood(Klon)(UnityEngine.transformieren). Ich weiß nicht, warum es sagen würde, zu verwandeln, wenn. Ich habe nicht alles erzählt geworfen zu werden, wie eine Transformation.

InformationsquelleAutor Don Subert | 2015-03-09

Schreibe einen Kommentar