Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Описание

Это примечания, о которых следует помнить при обновлении проектов с Unity 4 до Unity 5, если в вашем проекте используется AI/Navmesh Сетка, которую Unity создает для аппроксимации пешеходных зон и препятствий в вашей среде для поиска пути и навигации под управлением ИИ. Подробнее
См. в функциях Словарь
.

  • Контур навигационной сетки может выглядеть иначе из-за измененного разделения — в случаях с узкими коридорами/дверными проемами и т. п. — это может привести к различиям в связности. Решите проблему, изменив воксельтрехмерный пиксель. Подробнее
    См. размер Словарь
    для построения навигационной сетки.
  • Установка места назначения для NavMeshAgent не возобновляет работу агента после вызова команды «Стоп». Чтобы возобновить работу агента, вызовите команду «Возобновить» явно.
  • NavMeshAgent.updatePosition: когда updatePosition имеет значение false и преобразование агента перемещается, положение агента не меняется. Раньше положение агента сбрасывалось на положение преобразования, ограничиваясь ближайшей навигационной сеткой.
  • Компонент NavMeshObstacle: форма по умолчанию для вновь созданных компонентов NavMeshObstacle — это прямоугольник. Выбранная форма (коробка или капсула) теперь применяется как к вырезанию, так и к уклонению.
  • Сетка навигации, созданная в более ранних версиях Unity, не поддерживается. Вы должны перестроить с помощью Unity 5. Вы можете использовать следующий скрипт в качестве примера того, как перестроить данные NavMesh для всех ваших сценA Сцена содержит окружение и меню вашей игры. Думайте о каждом уникальном файле сцены как об уникальном уровне. В каждой сцене вы размещаете свое окружение, препятствия и декорации, по сути проектируя и создавая свою игру по частям. Подробнее
    См. в Словарь
    .

Пример сценария повторной выпечки

#if UNITY_EDITOR using System.Collections.Generic; using System.Collections; using System.IO; using UnityEditor; using UnityEngine; using UnityEngine.AI; public class RebakeAllScenesEditorScript { [MenuItem ("Upgrade helper/Bake All Scenes")] public static void Bake() { List sceneNames = SearchFiles (Application.dataPath, "*.unity"); foreach (string f in sceneNames) { EditorApplication.OpenScene(f); // Rebake navmesh data NavMeshBuilder.BuildNavMesh (); EditorApplication.SaveScene (); } } static List SearchFiles(string dir, string pattern) { List sceneNames = new List (); foreach (string f in Directory.GetFiles(dir, pattern, SearchOption.AllDirectories)) { sceneNames.Add (f); } return sceneNames; } } #endif
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
Руководство Unity 2021.3