Pour poser le sujet, j'essaye de réaliser un tower défense 3D en m'inspirant d'un tutoriel trouvé sur youtube.
J'ai donc un sol composé de plusieurs dalles et j'aimerais que ces dalles changent de couleur lorsque je passe ma souris dessus.
J'ai essayé le MouseOver(), malheureusement une fois les tourelles créées, la souris entre en contact avec le collider des tourelles et non plus des dalles. J'ai donc trouvé des sujets sur internet qui proposaient de créer un raycast par rapport à la souris mais je ne suis pas parvenu à réaliser mon objectif.
J'ai ce script qui est lié à la caméra:
Code : Tout sélectionner
function Update ()
{
var direction = Input.mousePosition; // variable qui reçoit la position de la souris.
var hit: RaycastHit; // variable qui permet de détecter les collision
if(Physics.Raycast(transform.position, direction, 100)) // On lance un rayon qui part de la camera, qui prend la direction du pointeur de la souris et qui a pour longueur 100.
{
if(hit.collider.gameObject.tag == "sol") // Si le rayon touche un objet dont le tag est "sol".
{
hit.collider.gameObject.GetComponent.<MeshRenderer>().material.mainTexture = texOk; // Alors on modifie la couleur de la dalle.
}
}
}
Merci d'avance.