Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Unity NullReference error al usar el prefabricado FirstPerson

Iniciado por Hechelion, 27 de Agosto de 2011, 12:53:53 AM

« anterior - próximo »

Hechelion

Me he puesto a testear Unity (acabo de actualizar a la 3.4) y a seguir algunos tutorial que he encontrado por ahí.

Traté de hacer algo simple, un terreno y un personaje que se mueva, para lo cual use el prefabricado FirstPersonControl, que en los tutoriales que he mirado y leído se supone que es arrastrar al escenario y usar (luego de borrar la cámara principal), pero en mi caso, aunque el escenario carga bien, (incluso puedo construir el juego) el personaje no responde a los comandos, ni del teclado ni del mouse y el sistema me marca el siguiente error:

NullReferenceException: Object reference not set to an instance of an object
FirstPersonControl.Update () (at Assets/Standard Assets (Mobile)/Scripts/FirstPersonControl.js:66)

y la línea en cuestión (LA primera línea del a función Update):

var movement = thisTransform.TransformDirection( Vector3( moveTouchPad.position.x, 0, moveTouchPad.position.y ) );

Por lo que entiendo hay una referencia que no se está creando bien, pero al ser nuevo en Unity y en Java no sé bien donde se está generando el problema, en especial porque en todas las partes que leo, el FirstPersonControl debería ser llegar y usar.
Intente buscar el error en google, pero el único enlace que me da, es al foro de Unity, donde otra persona tiene exactamente el mismo error pero nadie le ha contestado, así que si alguno me puede tirar un cable se lo agradecería.

Eskema

Has mirado si el gameobject esta linkado al first person controller ese?, normalmente esos errores son porque accedes a un componente que no existe, bien porque te has olvidado de arrastrarlo hasta ese gameobject o porque no lo has declarado

XÑA

Cuando añades un prefab, normalmente a la derecha tienes que indicar a qué gameobjects se refier u otros parámetros. Por ejemplo, yo tenía una cámara que seguía una esfera. Si arrastraba la cámara desde el prefab, el gameobject que hace de target está a null, por lo que debes asignarlo.

Fíjate en el ejemplo original, y verás que el FirstPersonController se enlaza con algo.

Hechelion

Gracias por las respuestas, estuve mirando, pero en el inspector no hay ningún parámetro para referenciar un objeto y los tutoriales no hablan de ninguna parametrización, los volví a revisar y simplemente lo mueven de la pestaña Project a la escena y listo.

Igual me puse a mirar y he encontrado otro First Person Controller, pero dentro de la carpeta "Character Controller" y no en Prefabs como indicaban los tutoriales, asumo que con la versión nueva se debió reorganizar esto, pues acabo de probar con este objeto y me está funcionando, aunque igual tengo la duda de porque no funcionó el otro, pero por lo menos ya lo tengo andando, gracias por la ayuda.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.