コード例 #1
0
 private void Update()
 {
     baker.UpdateNavmesh(0, transform.position, Vector3.one * 100, true); //保持整个场景的更新
 }
コード例 #2
0
 void LateUpdate()
 {
     if (transform.position == destPosition)
     {
         currentState = 2;
         navigationBaker.UpdateNavmesh();
         transform.position = destPosition;
         if (plat.topPlat != null)
         {
             plat.topPlat.calculaReachables();
         }
         if (plat.bottomPlat != null)
         {
             plat.bottomPlat.calculaReachables();
         }
         if (plat.leftPlat != null)
         {
             plat.leftPlat.calculaReachables();
         }
         if (plat.rightPlat != null)
         {
             plat.rightPlat.calculaReachables();
         }
         plat.calculaReachables();
         if (plat.topPlat != null)
         {
             plat.topPlat.calculaReachables();
         }
         if (plat.bottomPlat != null)
         {
             plat.bottomPlat.calculaReachables();
         }
         if (plat.leftPlat != null)
         {
             plat.leftPlat.calculaReachables();
         }
         if (plat.rightPlat != null)
         {
             plat.rightPlat.calculaReachables();
         }
     }
     else if (transform.position == iniPosition)
     {
         currentState = 0;
         navigationBaker.UpdateNavmesh();
         transform.position = iniPosition;
         if (plat.topPlat != null)
         {
             plat.topPlat.calculaReachables();
         }
         if (plat.bottomPlat != null)
         {
             plat.bottomPlat.calculaReachables();
         }
         if (plat.leftPlat != null)
         {
             plat.leftPlat.calculaReachables();
         }
         if (plat.rightPlat != null)
         {
             plat.rightPlat.calculaReachables();
         }
         plat.calculaReachables();
         if (plat.topPlat != null)
         {
             plat.topPlat.calculaReachables();
         }
         if (plat.bottomPlat != null)
         {
             plat.bottomPlat.calculaReachables();
         }
         if (plat.leftPlat != null)
         {
             plat.leftPlat.calculaReachables();
         }
         if (plat.rightPlat != null)
         {
             plat.rightPlat.calculaReachables();
         }
     }
     else
     {
         navigationBaker.UpdateNavmesh();
     }
 }