Buenas! Necesito ayuda sobre un par de cuestiones fundamentales para el proyecto de museo virtual que estoy realizando en Unity :
1. ¿Cómo hacer que la flecha del mouse aparezca en la opción game de mi escena? ¿Tengo que crear un script nuevo y enlazarlo al FPSController?
2. Me gustaría que, en el modo game, pudiera pinchar sobre una obra de arte y que me saliera la información de dicha obra. Por ejemplo, que cuando pinche el cuadro de Las Meninas, por decir uno, me saliera una pequeña imagen con la información: autor, fecha, etc.
Muchas gracias!!
En caso de no haberme explicado bien, decídmelo :)
1.-Nunca lo he hecho asi que lo he mirado en google xD xD
var myCursor:Texture2D;
var cursorSizeX: int = 32;
var cursorSizeY: int = 32;
function Start(){
Screen.showCursor = false;
}
function OnGUI(){
GUI.DrawTexture (Rect(Input.mousePosition.x-cursorSizeX/2, (Screen.height-Input.mousePosition.y)-cursorSizeY/2, cursorSizeX, cursorSizeY),myCursor);
}
Tambien tienes Cursor.SetCursor() ,para ir cambiando el aspecto.
2.-Con ScreenPointToRay, lanzas un raycast desde la posicion del mouse en la pantalla y compruebas el tag de la colision que te de si ha clicado en un cuadro recoges con getcomponent algun script que tengas asociado donde este la informacion del cuadro y que llame a una funcion que cambie el UI.Podrias ponerle al gameobject de la obra de arte un TriggerCollider para comprobar si el player esta cerca y entonces mostrar el puntero del raton.
if(input.MouseButtonDown(0)){
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if(Physics.Raycast (ray, out hit))
{
if(hit.transform.name == "Cuadri")
{
Debug.Log ("Es un cuadro");
ShowObjectUI(hit.GetComponent<CuadroStats>());
}
else {
Debug.Log ("Otra cosa");
}
}
}