Noticias

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

Objeto interactivo

Iniciado por Argo214, Diciembre 30, 2015, 01:43:19 PM

Tema anterior - Siguiente tema
Buenos días. Estoy preparando un juego para plataformas móviles y necesito saber cómo puedo hacer para que al pulsar con el dedo en un objeto aparezca un mensaje. Sé que debe ser algo muy básico pero estoy empezando y agradecería mucho vuestra ayuda. Gracias.



Diciembre 31, 2015, 11:49:01 AM #3 Ultima modificación: Diciembre 31, 2015, 11:50:07 AM por Argo214
He probado con este código aplicándolo a la cámara pero no aparece el mensaje al pulsar con el ratón sobre el objeto. using UnityEngine;
using System.Collections;

using UnityEngine.UI;

public class MansajeZonas2 : MonoBehaviour {

    public GameObject ventana;

    void Update() {
        if (Input.GetMouseButtonDown(0)) {
            RaycastHit hit;
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            if (Physics.Raycast(ray, out hit))
                if (hit.collider.gameObject.name == "circulo_02"){
                    
                ventana.SetActive(true);
            }
    
        }
    }
}

Diciembre 31, 2015, 04:40:04 PM #4 Ultima modificación: Enero 06, 2016, 01:42:30 PM por kaito
Los eventos del ratón(OnMouseEnter, OnMouseDrag, OnMouseExit, OnMouseDown) funcionan también con la pantalla tactil de Android. El siguiente script mueve un objecto 3D arrastrando el dedo sobre la pantalla del dispositivo Android:
using UnityEngine;
using System.Collections;

public class script1 : MonoBehaviour {

float distancia;

void OnMouseDown(){

   this.distancia = Vector3.Distance(Camera.main.transform.position, this.transform.position);

}

void OnMouseDrag(){

   Vector3 temp = Input.mousePosition;
   temp.z = this.distancia;
   this.transform.position = Camera.main.ScreenToWorldPoint(temp);

}

}
 

Etiquetas: