visual studio microsoft espaƱol descargar community c# unity3d gameobject

studio - Unidad/C#Encontrar objeto y obtener componente



visual studio installer (2)

Esto debería ser fácil:

GameObject myCube = GameObject.Find("Cubey").GetComponent<GameObject>();

simplemente lanza el error CS0309: El tipo UnityEngine.GameObject debe ser convertible a UnityEngine.Component para usarlo como parámetro T en el tipo genérico o método UnityEngine.GameObject.GetComponent ()

Normalmente, los errores que muestra Unity son útiles, pero esto es simplemente confuso. ¿Los cubos no son GameObjects? Cualquier puntero sería apreciado (sin juego de palabras).


GameObject no es un componente. Un GameObject tiene un montón de Component adjuntos.

Puede quitar la llamada GetComponent y simplemente usar el resultado de su Find("Cubey")

GameObject myCube = GameObject.Find("Cubey");


Eso es un error fácil, estado allí ... muchas veces en realidad :)

Lo explicaría así, sin olvidar que siempre hay una posibilidad de que esté equivocado o que no haya entendido bien este problema :)

GameObject es un tipo. Por lo tanto, el tipo GameObject solo se puede asociar con GameObjects o cosas que hereda de GameObject.

El significado de esto es: la variable GameObject solo puede apuntar a GameObjects y subclases de GameObject. El código a continuación está apuntando a un Componente que es de tipo GameObject.

GameObject.Find("Cubey").GetComponent<GameObject>();

Esto significa encontrar Cubey y señalar un GameObject adjunto a Cubey.

Supongo que como ya dije antes, el Componente que está buscando no es del tipo GameObject.

Si desea que la variable GameObject myCube apunte a Cubey, puede hacer lo siguiente:

GameObject myCube; void Start(){ // Lets say you have a script attached called Cubey.cs // This is a slow approach myCube = GameObject.FindObjectOfType<Cubey>(); } // A faster approach is to do // You need to then attach cubey through the inspector public GameObject myCube;

Espero que ayude a los usuarios a llegar a esta publicación con el mismo problema.