[Résolu][DB-AL] Cliquer sur un objet dans un trigger

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
EmileF
Messages : 676
Inscription : 18 Mars 2017 19:39

[Résolu][DB-AL] Cliquer sur un objet dans un trigger

Message par EmileF » 18 Mars 2017 19:54

Bonjour à tous
Veuillez excuser mes erreurs, s'il y en a, c'est ma première question.
Dans le jeu que je crée, mon player se déplace de cellule en cellule en cliquant sur l'une d'elle.
J'ai parfois besoin de regrouper certaines cellules dans un trigger pour repérer une zone dans lequel mon player peut entrer.
Je n'arrive pas à trouver une solution pour pouvoir cliquer sur une cellule située dans ce trigger.
Est-ce seulement possible???
Merci
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

Avatar de l’utilisateur
E3DStef
Administrateur
Administrateur
Messages : 1646
Inscription : 14 Juil 2013 18:30
Localisation : https://www.carte-des-membres.com/fr/Unity3D-France/

Re: Cliquer sur un objet dans un trigger

Message par E3DStef » 19 Mars 2017 01:38

Bonsoir Emile,

Tout est toujours possible, des fois en passant par des chemins bizarres ;-)

Par contre je n'ai pas bien compris ce que tu souhaites faire, pour nous illustrer et expliquer ton pblm ce serait bien d'avoir des bouts de codes et/ou des visuels de l'actuel et du résultat que tu souhaites.

A+

Stef
Le Savoir n'est Précieux que s'il est Partagé

Si besoin urgent de me contacter, faites moi un mail sur : franceunity3d@gmail.com

EmileF
Messages : 676
Inscription : 18 Mars 2017 19:39

Re: Cliquer sur un objet dans un trigger

Message par EmileF » 19 Mars 2017 13:59

Merci E3DStef pour ta réponse.
je viens de trouver une solution à mon problème.
Effectivement je n'arrivais pas à cliquer sur un objet situé dans le trigger d'un autre objet. Evidement c'est l'objet du trigger qui ressortait lors du clic.
Il y a moyen d'éviter se problème en utilisant les Raycast et les Layer:

//ignore le layer 9
int mask = ~(1 << 9);

ou
//recherche le layer 9
int mask = (1 << 9);

l'exemple suivant clique sur tout ce qui n'a pas le layer n°9

Code : Tout sélectionner

    void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
            //ignore le layer 9
            int mask = ~(1 << 9);
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;
            if (Physics.Raycast(ray, out hit, Mathf.Infinity, mask))
            {
                //le clic sera pris par tout objet n'ayant pas le layer n°9
            }
        }
    }
Merci pour ton aide

:!: Les balises code SVP :!:
Merci de lire la Netiquette.
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

Avatar de l’utilisateur
Max
Messages : 8772
Inscription : 30 Juil 2011 13:57
Contact :

Re: Cliquer sur un objet dans un trigger

Message par Max » 19 Mars 2017 14:15

Bonjour emile121153,

Concernant les layers et masks pour emploi dans les raycasts, ça tombe bien, cela a été traité encore ces jours derniers dans un sujet:
viewtopic.php?f=89&t=13868
faisant aussi référence à celui-ci:
viewtopic.php?f=7&t=11111#p83822

bonne lecture ;)
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

EmileF
Messages : 676
Inscription : 18 Mars 2017 19:39

Re: [DB-AL] Cliquer sur un objet dans un trigger

Message par EmileF » 20 Mars 2017 13:59

Merci pour vos réponse et pardon pour n'avoir pas utilisé les balises pour le code, je n'ai pas lu la netiquette car je n'ai même pas vu qu'il y en avait une.
Je ferai attention la prochaine fois. Désolé et merci.
J'ai donc trouvé la solution à mon problème et je ne manquerai pas de venir vous revoir si j'ai un autre problème ou si je peux répondre à une question. On peut rêver... :lol:
Merci et à bientôt


pss... Je n'arrive pas à trouver la méthode pour dire que la question est résolue.
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

Avatar de l’utilisateur
Max
Messages : 8772
Inscription : 30 Juil 2011 13:57
Contact :

Re: [DB-AL] Cliquer sur un objet dans un trigger

Message par Max » 20 Mars 2017 14:02

emile121153 a écrit :pss... Je n'arrive pas à trouver la méthode pour dire que la question est résolue.
Il te faut éditer le titre de ton message initial, et rajouter [Résolu]
Cette fois, je l'ai fait pour toi.
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

Répondre

Revenir vers « Scripting »