martes, 4 de noviembre de 2014

#Script Mirar a otro objeto #unity3d #javascript C#

El siguiente Script está basado en propiedades básicas predeterminadas por Unity, mediante la cual podemos hacer que la cámara o un personaje siga por así decirlo con la "vista" a otro objeto.


En el siguiente post se usará la propiedad LookAt(target).


Este Script ayuda en juegos donde tenemos varios NPC (No Personal Controller - Personajes no controlados por el usuario) que cuando el Player pasa cerca de ellos, ellos tienden a seguirlo con la mirada.

Adjunto el Script tanto en C# como en JS. Estos han sidos tomados del sitio web oficial de Unity en la sección de tutoriales. (Recomiendo que revisen el web site).

Como se observa en el video, este script se lo puedes colocar a una cámara para que este siga al gameobject que has asignado como target.

* JS
-------------------------------------------
public var target : Transform;

function Update () {
    transform.LookAt(target);
}
-------------------------------------------

* C#
-------------------------------------------
using UnityEngine; 
using System.Collections; 

     public class CameraLookAt : MonoBehaviour { 
                public Transform target; 

                void Update () {
                         transform.LookAt(target); 
                 }
 }
-------------------------------------------

4 comentarios:

  1. Una pregunta sabes donde puedo encontrar el script de MouseLook que sirve para ver de for a Como un call of duty o battlefield o sea Es para ver en primera persona( aunque ya lo tengo hecho me falta la parte de que cuando muevo el raton la camara tambien se tiene que mover para eso Es Mouselook y Como no lo encuentro la camara se queda quieta y no se puede dar una Miranda alrededor) y eso Es un problema para mi ya que estoy haciendo un juego de disparos en primera persona y eso Es muy escencial en mi prollecto

    ResponderEliminar
    Respuestas
    1. Estimado Brayan,
      El script que estas buscando se instala por defecto con el FPC (Controlador de la Primera Persona) en unity.
      Pero te adjunto el link para que lo revises.

      http://answers.unity3d.com/questions/29741/mouse-look-script.html

      Eliminar
  2. Buenas, me gustaría que me ayudaras en un problemilla que tengo, y no puedo continuar el juego que estoy haciendo. Veras, hay una parte donde al girar una esquina, te encuentras a lo lejos del pasillo a un loco bajo una luz. Quiero que al avanzar un poco, se apague la luz con un sonido de bombilla rompiendose y al mismo tiempo que el loco desaparezca, como un screamer pero al revés, que desaparezca junto con la luz y haciendo un sonido de bombilla, ya ya seguir hacia delante. Si me pudieras ayudar, te lo agradecería mucho por que estoy bastante estancado ahí y no se como hacerlo yo por mis propios métodos, y me harías pegar un cambio al juego increíble ! Salu2 ;DDD

    ResponderEliminar
    Respuestas
    1. Puedes hacerlo de dos formas, la primera es con una zona sensible para que cuando ingreses a esta, actives el sonido, apagues la luz y desaparezcas a la persona, la segunda sería usando el raycast para dibujar un vector con cierta distancia y cuando la distancia toque el objetivo que en este caso sería la persona, se activen y desactiven las cosas, depende que se te haga más fácil.

      Eliminar