L'unité C# Instanciation de préfabriqués et coulage de GameObject

Dans l'Unité avec le C#, j'essaie d'Instancier à partir d'un préfabriqué et affecter un script pour le nouvel objet. Pour ce faire, je crois que j'ai besoin d'avoir le nouvel objet jeté comme un GameObject. Cependant, le type de retour d'Instancier est UnityEngine.Objet

De l'Unité manuel:

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

Ceci, cependant, les résultats dans un InvalidCastException. Je l'ai vu mentionné sur ce forum pour essayer ceci à la place:

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

Ceci, cependant, les résultats de la même exception.

J'ai vu certains postes, ce qui suggère en train de jeter avec:

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

Cette syntaxe n'est pas, cependant, semblent être pris en charge par le compilateur.

C'est assez déroutant. Je suis la copie de petits morceaux de code à partir de (sans doute correct) manuels et de dépassement de pile réponses, et n'a pas l'air de fonctionner.

Je ne suis pas sûr de ce que l'information serait nécessaire pour aider à résoudre cette énigme, il suffit donc de me demander ce dont vous avez besoin.

Pour l'instant j'ai essayé l'enregistrement de l'objet instancié avant d'essayer de le jeter. Il se présente comme ThrownFood(clone)(UnityEngine.transformer). Je ne sais pas pourquoi il dirait transformer si. Je n'ai rien en disant qu'il être jeté comme une transformation.

InformationsquelleAutor Don Subert | 2015-03-09