Unity 2D - низкий fps в редакторе, 60+ fps в сборке

мы разрабатываем платформер на движке Unity. В настоящее время в нашей сцене 15 npc, движение основано на анимации, они управляются с помощью скриптов, они могут разговаривать с игроком, сражаться и т. Д. Жесткое тело не обрабатывает столкновения, оно просто определяет землю как триггер. Когда сборка создана, все красиво и плавно, 60 кадров в секунду, в редакторе - от 25 до 30, иногда намного ниже, что иногда создает у нас много проблем. У вас есть опыт, как сделать игру в редакторе плавной? Спасибо


person adam    schedule 21.03.2019    source источник
comment
Ведение журнала может резко замедлить выполнение в редакторе. Уже будет заметно больше нескольких сообщений журнала в секунду.   -  person Thomas Hilbert    schedule 21.03.2019
comment
У нас только один Debug.Log на второй.   -  person adam    schedule 21.03.2019
comment
Помогает ли скрытие или закрытие вида сцены? Вы смотрели профилировщик?   -  person JeanLuc    schedule 23.03.2019
comment
это немного помогло   -  person adam    schedule 23.03.2019


Ответы (2)


если ваш редактор работает очень медленно, вы можете перейти к значку единства, щелкнуть его правой кнопкой мыши и выбрать свойства и в конце добавить в целевой add -force-opengl.

вы также можете увеличить fps на

 void Start()
{
    //increase of fps
    Application.targetFrameRate = 300;
}

для получения дополнительной информации перейдите на страницу https://docs.unity3d.com/ScriptReference/Application-targetFrameRate.html

попробуйте выйти из системы, потому что иногда вход в систему может замедлить работу редактора

person R4y    schedule 21.03.2019
comment
Тем не менее + - 35 кадров в секунду - person adam; 21.03.2019
comment
Хм, я думаю, ваше единство нарушено, попробуйте восстановить все единство - person R4y; 09.05.2019
comment
вы исправили это? - person R4y; 26.05.2019
comment
Нет, мы не знаем решения - person adam; 26.05.2019

Две главные вещи - это проверить, не запущен ли профилировщик и не открыто ли представление сцены. Это две наиболее частые причины (по моему опыту) замедления работы редактора.

Вы также можете убедиться, что не происходит легкого запекания, не должно быть для 2D, но стоит проверить.

Еще нужно проверить любые сценарии, предназначенные только для редактора, то есть пространство имен UnityEditor. * Usages (#if UNITY_EDITOR).

Если вам нужна неограниченная частота кадров, перейдите в настройки проекта -> качество -> режим vsync и выключите vsync.

person jjxtra    schedule 21.03.2019
comment
+5 кадров в секунду, когда профайлер остановил запись, свет в порядке, сцена близка, но все равно 35 кадров в секунду - person adam; 21.03.2019
comment
Еще одна вещь, которую нужно проверить, - это то, какие скрипты только для редактора работают, если таковые имеются. Это вещи, использующие пространство имен UnityEditor. * (Или #if UNITY_EDITOR) - person jjxtra; 21.03.2019
comment
У нас есть несколько скриптов для стилизации полей ввода в инспекторе редактора, что делать? Спасибо - person adam; 21.03.2019
comment
Проще всего закомментировать сценарии и посмотреть, поможет ли это. Если это действительно повысит частоту кадров, вы можете подумать об оптимизации сценариев, но, поскольку скорость в режиме сборки хорошая, это может не стоить того. - person jjxtra; 21.03.2019
comment
Я удалил свои пользовательские скрипты для редактора, но все еще не получил результата. Как я могу найти, например, другие скрипты редактора, установленные с активами? - person adam; 21.03.2019
comment
В Visual Studio найдите UnityEditor и посмотрите, какие файлы его используют. Если ничто другое не делает что-то особенное, замедление должно происходить где-то в другом месте. Вы также можете попробовать повторно включить профилировщик и посмотреть, что занимает больше всего времени в редакторе, может быть интересно посмотреть. - person jjxtra; 21.03.2019
comment
Только SpriteMeshInstance.cs. Когда я комментирую этот код, видно много ошибок - person adam; 21.03.2019
comment
Какая версия Unity? - person jjxtra; 22.03.2019
comment
Что ж, вы исчерпали мои идеи, удачи в поиске проблемы :) - person jjxtra; 22.03.2019