miércoles, 4 de diciembre de 2013

Script Unity - Encender o apagar lámpara

A continuación adjunto script JS para encender o apagar una luz en Unity 3D, pero antes de revisar el código se debe de considerar lo siguiente:


  1. Inserte el objeto a iluminar
  2. Inserte una luz
  3. Deshabilite el check de la luz
  4. Inserte un collider a la luz (para que funcione la opción de dar clic)
  5.  Inserte el código JS




Script Unity 3D - JS
_________________________________________________________________________________

function OnMouseDown()
{
if(Input.GetMouseButton(0))
{
light.enabled = !light.enabled;
}
}

domingo, 1 de diciembre de 2013

Script Unity - " Destuye objeto en tiempo x " y " movimiento y rotación "

A continuación adjunto dos scripts que puede ayudar a muchos en momentos de urgencia.

Estos scripts hace referencia a la acción de: Destruir un objeto que se muestra en escena luego de cierto tiempo, y el otro script hace referencia a mover un objeto cada vez que se haga update en el juego.

Script Destruye object 

---------------------------------------------------------------------------------

public var waitTime : float = 10; // tiempo a transcurrir previo a la destruir

function Start () {
Destroy(gameObject, waitTime);
}

Script Rotación y Traslación

---------------------------------------------------------------------------------


var speed =20; //velocidad de movimiento

function Update () {
transform.Rotate(speed*Time.deltaTime, 0, 0); //x, y, z Rotación
transform.Translate (speed*Time.deltaTime, 0, 0); //x , y, z Traslación
}

jueves, 28 de noviembre de 2013

Script Unity - Sigue objeto o player

A continuación adjunto el script que puede ayudar a muchos en momentos de urgencia.

Este script hace referencia a la acción de seguir a un objeto, parecido a este efecto que tenía el juego de Mario Bros con los fantasmas, que al ingresar a una zona sensible el fantasma seguía al personaje.




El script está desarrollado en JS
_________________________________________________________________________________
var target : Transform; //el Objetivo
var moveSpeed = 3; //velocidad de movimiento
var rotationSpeed = 3; //Velocidad de rotación
var myTransform : Transform;
var velocidadDeAnimacion = moveSpeed*0.3;//Solo si tu objeto esta animado

function Awake() {
    myTransform = transform;
}

function Start() {
    //Si deseas que siga a otro objeto que no sea el solo comenta esta linea de abajo...
     target = GameObject.FindWithTag("Player").transform; //target the player
}

function Update () {
     //Controlar la animacion en funcion de la velocidad a la que se mueva, si no esta animado tu objeto puedes dejar comentadas estas 3 lineas.
   
    /*for (var state : AnimationState in animation) {    
          state.speed = velocidadDeAnimacion;
    }*/

    //valida si la distancia
   
   if (Vector3.Distance (target.position, transform.position)<5){
        myTransform.rotation = Quaternion.Slerp(myTransform.rotation, Quaternion.LookRotation(target.position - myTransform.position), rotationSpeed*Time.deltaTime);

    //Movimiento en dirección del target
    myTransform.position += myTransform.forward * moveSpeed * Time.deltaTime;
    }
}


miércoles, 6 de noviembre de 2013

#Unity script para cronometro ascendente


El siguiente script es de formato *js o JavaScript y permite contar el tiempo desde el momento en que se carga la escena.

Muy útil cuando deseas controlar y saber, el tiempo que transcurre en cada escena en su proyecto de #unity


Este Script lo deben de colocar a un elemento de la escena para que cuando se ejecute dicha escena proceda a contar el tiempo.


*JS

private var startTime;

function Awake() {
startTime = Time.time;
}

function OnGUI () {
var guiTime = Time.time - startTime;
var minutes : int = guiTime / 60;
var seconds : int = guiTime % 60;
var fraction : int = (guiTime * 100) % 100;

text = String.Format ("{0:00}:{1:00}:{2:000}", minutes, seconds, fraction); //codifica el formato tiempo
GUI.Label (Rect (400, 25, 100, 30), text); //dibuja el tiempo en pantalla
}

martes, 5 de noviembre de 2013

Ejecutable para Android Unity - Building for Android

Para poder crear ejecutables en Unity para Android o crear los famosos archivos apk de unity, necesitamos crear un directorio de claves, a continuación los pasos que deben de seguir para crear el directorio de claves en unity.

  1. En los ajustes de publicación marcar la casilla "Crear nuevo almacén de claves" caja.
  2. Haga clic en Examinar y seleccione una ubicación en la que desea almacenar el archivo. Debe ser un lugar céntrico ya que no está muy relacionada con su proyecto.
  3. Establecer una contraseña de protección para el archivo y confirme.
  4. Seleccione "Crear una nueva clave" de los "Alias ​​Clave" desplegables.
  5. Una ventana se abrirá el que tienes que llenar con sus datos personales de su organización / persona.El alias de la parte superior es sólo un nombre del almacén de claves. Si tiene varias identidades, asegúrese de elegir un nombre significativo. Tiene que establecer una contraseña de almacén de claves. Tenga en cuenta que esto no es la misma que la contraseña de protección anteriormente. Por lo que yo sé que puede ser el mismo, pero la seguridad que deben utilizar dos diferentes.
  6. Haga clic en "Crear clave" para generar el archivo de almacén de claves.
Imagen Unity Opción para Crear claves


Para utilizar un almacén de claves para firmar usted tiene que:

  1. Marque la casilla "Usar almacén de claves existente".
  2. Haga clic en Examinar y seleccione el archivo de almacén de claves.
  3. introduzca su clave de protección.
  4. seleccione su identidad deseada en el alias desplegables.
  5. introduzca la contraseña del alias en el campo de abajo

Nota: Puede crear varias claves / Identidades en un archivo de almacén de claves. La primera protección de contraseña protege el archivo en sí. Al seleccionar una identidad a partir del archivo en el alias desplegables que tiene que escribir la contraseña de la identidad.
Fuente : http://answers.unity3d.com/questions/403985/building-for-android.html