Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

seleccionar un objeto con un "touch"

Iniciado por akamaru, Junio 25, 2015, 12:45:10 AM

Tema anterior - Siguiente tema
HOla!
bueno el titulo lo dice todo, alguien sabe como guardar el objeto que "pico" en una variable, para luego hacer aparecer un menú(esto ya lo ando solucionando con la UI), que modifique el objeto.?
 
la idea es que el jugador pueda escoger si quiere que se vea un objeto y el material con el que se visualizará
 
solo necesito lo de la selección XD
 
pero pues si me ahorran la investigación para el resto agradezco muchisimo.

Simplemente asi.

public GameObject GetObjectTouch()
{
       GameObject Result = null;    
       if (Input.touchCount > 0)
       {
           var ray = Camera.main.ScreenPointToRay (Input.GetTouch(0).position);
           var hit : RaycastHit;
           if (Physics.Raycast (ray, hit))
           {
                Result  = (hit.transform.gameObject);
           }
       }
       return Result;
}

Suerte!

Cita de: francoe1 date=1435188623Simplemente asi.

public GameObject GetObjectTouch()
{
       GameObject Result = null;    
       if (Input.touchCount > 0)
       {
           var ray = Camera.main.ScreenPointToRay (Input.GetTouch(0).position);
           var hit : RaycastHit;
           if (Physics.Raycast (ray, hit))
           {
                Result  = (hit.transform.gameObject);
           }
       }
       return Result;
}

Suerte!
muchas gracias!!!

Hola! no pude hacerlo, no me funciono :/

#pragma strict
 
function UpDate() {
var result : GameObject = null;

if(Input.touchCount > 0)
{
   var ray = Camera.main.ScreenPointToRay (Input.GetTouch(0).position);
   var hit : RaycastHit;
   if (Physics.Raycast (ray, hit))
   {
      result = (hit.transform.gameobject);
   }   
}
}

esto fue lo que escribí, el código es Js
 
no pude conseguir que funcionara, alguien sabe por que?, escribí algo mal?, es diferente en java script?

Eso no es que no te funcione. es que la funcion update se llama unas 60 veces por segundo, entonces lo que pasa es que la variable gameobject en donde tenes almacenado tu objeto se setea a null inmediatamente. saca la declaracion de la funcion al espacio global(fuera de la funcion update). avisame si te funciona sino miro de nuevo el codigo

Etiquetas: