Tengo un objeto en la pantalla. Al principio se ubica en x=0,y=0,z=0 luego se mueve a una posición diferente. Solo quiero asegurarme de que este objeto no se mueva a ubicaciones invisibles para el usuario (es el personaje principal del jugador y no quiero que el jugador pueda regresar desde su ubicación actual ni avanzar con la cámara que lo sigue).
¿Puedes explicarme qué debo hacer aquí?
Creo que estás preguntando:
Si un personaje jugador en la pantalla se está moviendo, querrás que la persona sentada frente a la computadora pueda verlo siempre. Para hacer esto, debe configurar la cámara para seguir este objeto.
Aquí hay algunos enlaces que pueden ayudarlo a comenzar:
http://unity3d.com/support/documentation/Components/class-Camera.html
http://unity3d.com/support/documentation/ScriptReference/Camera.html
Este tutorial tiene un ejemplo de cómo implementar una cámara que sigue al jugador.
http://unity3d.com/support/resources/tutorials/3d-platform-game.html
using UnityEngine; using System.Collections; public class NewGameScript : MonoBehaviour { float t=0f; float v=20f; float dist; // Use this for initialization void Start () { } void Update () { if(Input.GetKeyUp("up")) { if(t<0.1) { t +=Time.deltaTime*0.07f; } dist=t*v*0.5f; gameObject.transform.position +=transform.forward*dist; } else if(Input.GetKeyUp("down")) { if(t>-0.1) { t -=Time.deltaTime*0.07f; } dist=t*v*0.5f; gameObject.transform.position +=transform.forward*dist; } else if(Input.GetKey("left")) { transform.Rotate(0,-0.9f*(dist+1), 0); gameObject.transform.position +=transform.forward*0.1f*(dist+1); } else if(Input.GetKey("right")) { transform.Rotate( 0,0.9f*(dist+1),0); gameObject.transform.position +=transform.forward*0.1f*(dist+1); } } }