Page 1 sur 1

Comment changer de navmesh en runtime ?

Publié : 08 Jan 2020 01:11
par yarek
J'ai 2 navmesh sur ma scène
- 1 gros rectangle "- "navBig"
- 1 cercle A l'INTERIEUR de ce gros rectangle "navCircle"

Je veux pouvoir commuter entre ces 2 navmesh via le script :
ex: un joueur peut commencer dans le gors rectangle ou bien dans le petit cercle

J'ai essayé :

Code : Tout sélectionner

void Start() {
 navCircle = GameObject.Find("navCircle");
        navBig = GameObject.Find("navBig");
        navBig.SetActive(false);
        navCircle.SetActive(true);
}
Mais aucun effet: on ne commute pas entre navCircle et navBig: une idée ?

Re: Comment changer de navmesh en runtime ?

Publié : 08 Jan 2020 09:13
par Max
Bonjour,

Nativement tu ne peux pas gérer les NavMesh de cette façon.
Si tu veux limiter/gérer la navigation sur certaines zones, il faut passer par les Area Mask.

Re: Comment changer de navmesh en runtime ?

Publié : 08 Jan 2020 09:17
par boubouk50
Je ne crois pas qu'activer ou désactiver un gameObject ait quelconque utilité.
Il faut plutôt affecter le NavMesh désiré à un NavMesh Agent par le NavMesh Agent Type:
https://forum.unity.com/threads/creatin ... es.514305/