Узнайте о крупнейших обновлениях инструментария для программистов в Unity 2020.1. Подробности читайте в примечаниях к выпуску.
Улучшения инструментов профилирования
Помимо улучшений инструментов профилирования в Unity 2020.1, взаимосвязь Profiler и Player теперь стала стабильнее, особенно для бюджетных устройств на базе Android.
Поддержка метаданных для C# Profiler API позволяет определить, какие параметры следует сделать доступными в Profiler для получения дополнительного контекста собранных данных и лучшего понимания факторов, влияющих на производительность.
Мы значительно уменьшили потребление памяти средствами захвата и ускорили сбор данных для пакета Memory Profiler (предварительная версия).
В Unity 2020.1 данные производительности ГП доступны через Recorder API. Используйте Sampler API для сбора данных и визуализации в собственной области статистики во время выполнения приложения.
Отдельное приложение Profiler и визуализация событий потока
Теперь вы можете запускать Profiler как отдельное приложение. Таким образом, инструмент вынесен в отдельное приложение за пределы Unity, что снижает влияние на производительность при профилировании приложения в редакторе и дает более понятные данные о производительности.
Узнайте, как Unity управляет заданиями и потоками с помощью функции профайлера Flow Event. Эта функция позволяет обнаруживать случаи ожидания кодом основного потока задач, необходимых для завершения многопоточного кода. В визуализации отображаются маркеры событий и линии потоков, помогая выявлять взаимосвязи между системами, заданиями и потоками. Отсутствие необходимости в ручном поиске этих зависимостей экономит вам время.
В список подтвержденных пакетов IDE теперь включен Visual Studio
С этим выпуском интеграция с Visual Studio переносится в пакет, и мы будем развивать встроенную поддержку и дальше. Этот пакет также включает новые функции и улучшения, в том числе ускоренный запуск Visual Studio.
Изменение продолжает линию выноса интегрированных сред разработки (IDE) и Code Editor из основного дистрибутива в пакеты, которая началась с Visual Studio Code и JetBrains Rider.
Далее, в подтвержденном пакете JetBrains Rider IDE реализована поддержка Code Coverage и повышено удобство интерфейса, а подтвержденный пакет Visual Studio Code IDE, помимо прочих обновлений, теперь может инкрементально генерировать файлы csproj для IntelliSense и имеет функцию автоматического обнаружения установок.
Новый процесс отладки C#
Новый процесс отладки C# по умолчанию запускает редактор с оптимизацией кода C# в режиме Release, повышая производительность проекта в режиме игры.
Для отладки проекта нужно включить режим отладки до входа в режим игры. Вы можете переключать режимы оптимизации кода без перезапуска редактора, нажав кнопку Debug в правом нижнем углу строки состояния редактора Unity.
Создавайте поля для общих типов напрямую
Мы улучшили поддержку сериализуемых полей для общих типов. Раньше, если у вас был общий тип (например, класс MyClass<T>) и вы хотели создать поле с использованием этого типа, вам приходилось определять специальный подкласс (например, MyClassInt : MyClass<int>). Мы убрали это ограничение, чтобы вы могли использовать общий тип непосредственно, не прибегая к объявлению общего подкласса.
Компилятор Burst 1.3
Мы развиваем компилятор Burst как инструмент разработки, добавляя нативные функции отладки.
Теперь с помощью нативного отладчика, прикрепленного к Unity, вы можете задавать точки остановки, пропускать и переходить к нужному коду. Мы также добавили возможность проверки и навигации по стекам вызовов, переменным, средствам автоматизации и потокам.
Улучшения Profile Analyzer и Code Coverage (предварительная версия)
Пакет Profile Analyzer позволяет сравнивать данные кадра и маркера из набора кадров Unity Profiler одновременно. Обновления пакета в выпуске 2020.1 улучшают общую производительность и повышают удобство использования инструмента. Помимо этого, мы провели работу по улучшению пользовательского интерфейса. Code Coverage помогает понять, какие строки кода тестируются в данный момент.